home *** CD-ROM | disk | FTP | other *** search
/ The Utilities Experience / The Utilities Experience - Volume 1.iso / software / graphics / n-z / xv210 / changelog < prev    next >
Encoding:
Text File  |  1995-12-21  |  111.3 KB  |  2,592 lines

  1. Revision History
  2. ----------------
  3.  
  4. Make_xv.com in vms directory wouldn't build xvxpm.c or xvfits.c (and thus, XV!)
  5.                 (Rick Dyson  (dyson@sunfish.Physics.UIowa.Edu))
  6.  
  7.  
  8. XV 3.10 Public Release  12/21/94
  9. -------------------------
  10. Bug Fix:  Greyscale downsampling bug in JPEG code fixed.
  11.                 (Tom Lane  (tgl@sss.pgh.pa.us))
  12.  
  13. Enhancement:  Made Grab command trap 'BadMatch' errors and display an
  14.     appropriate error message (rather than exiting with a fatal error).
  15.                 (Eric Demerling (x450b05@rdsrv2.goodyear.com))
  16.  
  17. Enhancement:  Cleaned up/reorganized Makefile
  18.                 (Tom Lane  (tgl@sss.pgh.pa.us))
  19.  
  20. Portability: BSDI doesn't have malloc.h.  Fixed xv.h and vdcomp.c
  21.                 (Chris Ross (cross@eng.umd.edu))
  22.  
  23. Bug Fix:  Additional VMS schnauzer fixes.    
  24.                 (Rick Dyson  (dyson@sunfish.Physics.UIowa.Edu))
  25.  
  26.  
  27. Second XV 3.10 Beta Release
  28. ----------------------------
  29. Portability:  xvxpm.c module rewritten to include its own hash-table 
  30.     routines, as 'hsearch()' is not available on all systems.
  31.                 (Chris Ross (cross@eng.umd.edu))
  32.  
  33. Bug Fix:  Big stupid mistake in xvtiff.c module.  Too embarrassing to mention.
  34.                 (Michael Weller (eowmob@exp-math.uni-essen.de))
  35.  
  36. Bug Fix:  failing to store clipboard contents in an X property was 
  37.     (incorrectly) exiting the program as a fatal error, rather than 
  38.     falling back to using a '.xvclip' file in your home directory.
  39.                 (Eric Demerling (x450b05@rdsrv2.goodyear.com))
  40.  
  41. Docs:  Mentioned 'FITS' format, removed claim that rotate 90-degree commands 
  42.     will rotate selected area, added additional credits.
  43.  
  44. Bug Fix:  Cleaned up xvxpm.c - potential for infinite loops on broken
  45.     images.  Also, now handles 'None' better, and mentions when it can't
  46.     parse colorspecs.
  47.  
  48. Bug Fix:  When viewing large images, a rotate may not have properly redrawn
  49.     the image.  Also, it could lose the proper aspect ratio.
  50.                 (Michael Weller (eowmob@exp-math.uni-essen.de))
  51.  
  52. Bug Fix:  'Expansion' and 'Resolution' fields in xv info window weren't
  53.     getting updated when image was rotated.
  54.  
  55. Bug Fix:  If you were in Perfect or OwnCmap color modes, and switched to a 
  56.     root display mode, it didn't (correctly) switch to Normal colors.
  57.                 (Michael Weller (eowmob@exp-math.uni-essen.de))
  58.  
  59. Added Feature:  XV can now read and write greyscale FITS images
  60.                 (David Robinson  (drtr@mail.ast.cam.ac.uk))
  61.  
  62. Enhancement:  XV can now read old Windows and OS/2 BMP files
  63.                 (Eric Dumas (dumas@daubasse.emi.u-bordeaux.fr))
  64.  
  65. Portability:  now uses the Dec 8 re-release of IJG jpeg software (ver. 5a)
  66.                 (Tom Lane  (tgl@sss.pgh.pa.us))
  67.  
  68. Portability:  need to include <sys/select.h> on aix systems ('_AIX')
  69.                 (Eric Demerling (x450b05@rdsrv2.goodyear.com))
  70.  
  71. Portability:  NetBSD objects to 'extern char *sys_errlist[];'
  72.                 (Chris Ross (cross@eng.umd.edu))
  73.  
  74. Portability:  CBSIZE (in xvbutt.c) is defined on some systems in param.h.
  75.     Changed to XVCBSIZE.    (Chris Ross (cross@eng.umd.edu))
  76.  
  77. Portability:  'Makefile' in TIFF directory assumed 'ar' lived in /bin.  This
  78.     isn't necessarily so.  It'll now just search the path.
  79.             (Michael Weller (eowmob@exp-math.uni-essen.de))
  80.  
  81. Bug Fix:  recursive update on VMS didn't work right
  82.             (Rick Dyson  (dyson@sunfish.physics.uiowa.edu))
  83.  
  84.  
  85. Initial XV 3.10 Beta Release
  86. ----------------------------
  87. Added Feature:  XV now comes with 'xvpictoppm' program, which reads XV 
  88.     thumbnail files and converts them to standard PPM format.
  89.  
  90. Added Feature:  XV can now read the XWD format.  Whether or not this will
  91.     still be an issue, given the whizzo new 'Grab' command, I don't
  92.     know.  XV does *not* write XWD files, as XWD is not a format to be
  93.     encouraged.      (Markus Baur (mbaur@ira.uka.de))
  94.  
  95. Bug Fix:  'xv -poll -root <filename>' would thrash wildly if the file didn't
  96.     exist, or wasn't loadable.  Now behaves better.
  97.  
  98. Added Feature:  'Recursive Update' command in visual schnauzer.  Does an 
  99.     'update' command in the current directory, and recursively down into
  100.     all subdirectories.  Keyboard Equivalent:  ^e
  101.  
  102. Bug Fix:  Potential problem when allocating colors for std colormap.
  103.             (Yasuhiro Imoto  (tomo@sonytek.co.jp))
  104.  
  105. Bug Fix:  Cropping a large area while zoomed in could result in enormous,
  106.     potentially off-screen images.  A bad thing.
  107.  
  108. Added Feature:  Added a 'Select Files' command in the visual schnauzer, 
  109.     which lets you select files by name.  The wildcard character '*'
  110.     (which matches any arbitrary char sequence) is supported.  This 
  111.     gives you an easy way to select all the JPEG files ('*.jpg'), for
  112.     example.  Keyboard Equiv:  ^f
  113.  
  114. Bug Fix:  Added support for 15-bit-per-pixel displays, and probably fixed
  115.     support for 15/16-bit LSBFirst displays.  At least on 80x86-based
  116.     machines, which is where nearly all 15/16-bit displays have to be.
  117.             (Michael Weller (eowmob@exp-math.uni-essen.de))
  118.  
  119. Bug Fix:  Somewhere along the line, the file name list (in the controls window)
  120.     was getting redrawn at least one time too many, when you loaded
  121.     files from the schnauzer.
  122.  
  123. Added Feature:  Added a 'despeckle' algorithm (median filter).
  124.             (Colin Plumb  (colin@nyx10.cs.du.edu))
  125.  
  126. Added Feature:  XV now can read and write the XPM format.  It can read XPM
  127.     images with any number of colors, though it only writes XPM images
  128.     with a maximum of 256 colors.  (If your image has more than 256
  129.     colors, it is automatically quantized.)  While the XPM format lets 
  130.     you do arbitrary-depth images, it's not really well suited for 
  131.     images with more than a small number of colors, so the 256 color 
  132.     limitation shouldn't be a big problem.
  133.             (Chris P. Ross (cross@eng.umd.edu))
  134.  
  135. Added Feature:  Added a 'Origin' button the the 'Save Postscript...' window.
  136.     Positions the image aligned at the bottom-left corner of the page,
  137.     which is the origin (0,0) in the Postscript world.  May make certain
  138.     desktop-publishing operations easier if you're using XV to generate
  139.     EPS files for incorporation into page-layout software.
  140.             (Michael Lipscomb  (lipscomb@vision1.engr.utk.edu))
  141.  
  142. Enhancement:  Added 'xv.pspaper', 'xv.psorient', and 'xv.psres' options to
  143.     set default behavior in the 'Save Postscript..." window.  
  144.     
  145.     pspaper sets the default paper type, and can be any of the following:
  146.             8.5x11 A4 B5 A3 8.5x14 11x17 4x5 35mm
  147.  
  148.     psorient sets the default paper orientation, can can be either
  149.         'portrait' or 'landscape'
  150.  
  151.     psres sets the default resolution (dpi) and can be an integer 
  152.         between 10 and 720, though not all values are attainable, as the
  153.     resolution is controlled by the 'scale' dials, which must take on
  154.     integral values.  All the common resolutions are available, however
  155.     (72dpi, 75dpi, 100dpi, 300dpi, 600dpi, etc.)
  156.  
  157.  
  158. Added Feature:  Added a '-nodecor' option (and boolean 'xv.nodecor' resource)
  159.     that lets you turn off the window 'decorations' (title bar, menu box,
  160.     minimize and maximize buttons) on the XV image window, in MWM.  
  161.     When these things are on (by default), the prevent the image window
  162.     from being made smaller than some MWM-specified minimum width, which
  163.     can be a real pain when working with tiny (< 100 pixels wide) images.
  164.     Turning this option on disables these decorations, and lets the image
  165.     window be any size whatsoever.  (This only works for MWM.  TWM doesn't
  166.     have this problem, and OLWM doesn't appear capable of doing this
  167.     on the fly, on a per-window basis.  For OLWM, use the 
  168.     'owlm.MinimalDecor: xv' resource.  Note this affects *all* xv windows.)
  169.  
  170. Bug Fix: Input focus wasn't working out correctly under OLWM.
  171.  
  172. Bug Fix: "-rotate" command line option was only applied to the first image
  173.     loaded.        (Osama (neiroukh@vision1.engr.utk.edu))
  174.  
  175. Enhancement:  The 'slow' 24->8 algorithm now uses code derived from the IJG
  176.     jpeg distribution, which is a considerably better implementation of
  177.     the median-cut algorithm than XV was using before.
  178.  
  179. Enhancement:  Version 5 of the jpeg library (which XV now uses) supports
  180.     a quick image subsampling 'thing' which XV now uses when generating
  181.     Visual Schnauzer icons.  Practical upshot:  creating icons from jpeg
  182.     files is now many times faster.
  183.  
  184. Bug Fix:  'xv -hist -expand <x>' would crash.  Doesn't do that any more.
  185.             (Ulf Cahn von Seelen  (cahn@grip.cis.upenn.edu))
  186.  
  187. Enhancment:  XV can now read 16-bit per pixel 'raw' PGM and PPM files.
  188.             (David A. Clunie (dclunie@flash.us.com))
  189.  
  190. Enhancment:  In the Schnauzer, if you hold 'shift' while hitting the spacebar,
  191.     it will select (and load) the next file, while keeping the previous
  192.     file selected.  This lets you (somewhat more easily) build groups
  193.     of files to be moved or deleted, as you can just hold shift, and
  194.     space your way through all the files.  Shift click to de-select 
  195.     files that should be skipped.
  196.  
  197. Added Feature:  Added an 'annotate' command that lets you put text on an
  198.     image.  Keyboard Equivalent: 'A'.  To use it, select a drawing color
  199.     using the 'dropper' (middle click on image), and press the 'A' button.
  200.     Enter a string and hit Ok (or return).  If there is a current 
  201.     selection, the text will be scaled to fit the selection.  Otherwise,
  202.     a selection box the size of the text will be created in the middle
  203.     of the image window.  In this case, position and resize the selection,
  204.     as you see fit, and issue a 'Paste' command (meta-v) to place the
  205.     text on the image.  Note:  if you want to change the color of the
  206.     text, choose a new color and do the annotate command again.
  207.  
  208.     It's somewhat awkward, but it's time for a new release.  It'll probably
  209.     get polished in the next release...
  210.  
  211. Change:  'AutoCrop' keyboard equivalent is now 'C' instead of 'A'.
  212.  
  213. Added Feature: Added 'smudging'.  Shift-right click (and drag) on the
  214.     image (it's best if you zoom in first), and you can do a localized 
  215.     blur around the cursor.  Note that this only works on 24-bit images.
  216.     If the current image is a 8 bits deep, it will be converted into 
  217.     a 24-bit image first, automagically.
  218.  
  219. Added Feature:  Added rudimentary image painting.  You can now paint
  220.     arbitrary curves (or straight lines) by doing a shift-middle click
  221.     (and drag) on the image window.  The pen will draw in whatever the
  222.     last color picked up by the 'dropper' (middle click on image) was,
  223.     (just like the 'clear' command).  Shift-middle will draw curves.
  224.     Shift-ctrl-middle will draw a connected series of line segments.  
  225.     Release and press ctrl to draw unconnected line segments.
  226.  
  227.     Note: there's no direct way to paint in any arbitrary color.  The paint
  228.     color must exist in the image *first*.  One way of adding colors to
  229.     an image is via the 'Pad' command.  Try padding with 'bggen', using
  230.     the 'Color Assortment' default to get a reasonable collection of
  231.     different colors added to the image.  Later you can pad the image 
  232.     back to its original size to get rid of the colorful borders.  BE SURE
  233.     to switch to 24-bit first...
  234.  
  235. Change:  Changed 'Standard Colormap' (used whenever viewing 24-bit images on
  236.     a non-TrueColor/DirectColor display) from a 6*6*6 colormap to a 4*8*4
  237.     colormap.  It uses fewer colors (128 instead of 216), and produces
  238.     better looking images (as the 2 extra green values more than make up
  239.     for the 2 fewer red and blue values).  It also looks somewhat better
  240.     when you use '-stdcmap' with '+vsperfect' (ie, have the schnauzer
  241.     share the stdcmap), as the 4*8*4 maps closer to the 8*8*4 used 
  242.     internally by the schnauzer than the 6*6*6 did.
  243.  
  244. Enhancement:  Added a 'trashcan' to the Visual Schnauzer.  You can now (also)
  245.     delete files by dragging them to a trashcan.  You'll be asked for
  246.     confirmation, the same as the 'Delete' command.
  247.  
  248. Change: 'unknown' files in the browser are now shown as 'plain' files.
  249.  
  250. Change: Moved a couple of keyboard equivs.  'p' now pops up the 'go to page'
  251.     dialog (when viewing a multi-page document) (was ^P).  
  252.     ^P is the keyboard equiv for the Print command.
  253.     Meta-a is the keyboard equiv for the Apply command (in the color
  254.     editor).  (was ^P)
  255.  
  256. Added Feature:  Added a 'Print' command.  ("Finally!", I hear many of you
  257.     saying.)  Keyboard equiv '^P'.  Quicker and easier to use than
  258.     the previous method (ie, saving PostScript to "| lpr"), even though
  259.     that's how it still does the trick.  Much more intuitive for 
  260.     Joe User, who wouldn't know a pipe if you hit him over the head with
  261.     one...
  262.  
  263. Enhancement:  When tracking pixel values (dragging the middle button
  264.     around on the image window), it now displays the distance of the
  265.     current point from where you originally clicked in a pair of
  266.     square brackets (ie, '[ -5, 37]') at the end of the line.  Handy
  267.     for measuring image features.
  268.  
  269. Bug Fix:  XV now supports both the 'cut buffer' and the 'selection' methods
  270.     of doing text cut-and-paste.  (ie, the 'CutRes' command, and 
  271.     tracking pixel values).  Prior to this, pasting either of those
  272.     things into an xterm may or may not have worked, depending on
  273.     whether another xterm had a current selection.
  274.  
  275. Bug Fix:  (Sort of).  Now that XV tries to grab a good visual, rather than
  276.     just using the default, it may now pick a 24-bit visual on machines
  277.     where the root window can only hold an 8-bit image.  In these cases,
  278.     it will disable the 'root' choices, unless you start XV with
  279.     the '-root' option, in which case it will choose a root-compatible
  280.     visual.  Not optimal, but better than it was...
  281.  
  282. Enhancement:  XV now displays a 'working' icon when the image window (or 
  283.     the control window, if there is no image window) is iconified and
  284.     XV is in the middle of a long operation (smoothing, loading a jpeg,
  285.     running an algorithm, etc.)  The icon changes back to the normal
  286.     icon when the operation completes.
  287.             (Idea: Bob Boag <BOAG@marshall.wvnet.edu>)
  288.  
  289. Enhancement:  It now displays what mode (8-bit or 24-bit) it's currently
  290.     in, in the controls window and the info window.
  291.  
  292. Added Feature:  Changed PadImage command to allow 'blended padding' (ie,
  293.     not-fully-opaque), in several modes (RGB, Hue, Sat., Int.,).  
  294.     In the HSV modes, it only pastes/blends the specified component
  295.     of the background fill.  You can get a variety of weird effects.
  296.     Ferinstance, take a grayscale pic, and pad it with a bggen'd
  297.     RGB rainbow, using Hue mode and Opaque=0.
  298.  
  299. Added Feature:  Added a 'Smear' algorithm.  Keyboard equiv 'meta-S'.  
  300.  
  301. Added Feature:  Added a 'Sharpen' algorithm.  Keyboard equiv 'meta-s'.
  302.  
  303. Bug Fix:  Substantially improved performance on DirectColor displays.
  304.     (Read: 'it works at all')  It's been tested on a 24-bit DirectColor,
  305.     and an 8-bit DirectColor visual.  It works on those, at least.
  306.     (TrueColor is still the recommended visual type, though since XV now
  307.     sniffs around for a TrueColor visual, it'll probably Do The Right
  308.     Thing by default.  Certainly that's the design.)
  309.  
  310. Added Feature:  Added a 'PadImage' command (keyboard equiv: 'P').  Lets you
  311.     make an image larger *without* rescaling it, by creating a new 
  312.     image of the specified size and pasting the original image onto the
  313.     center of the new image.  
  314.  
  315.     Currently, the new background can either be a solid color, the 
  316.     result of running 'bggen', or an image file in any of the supported
  317.     (loadable) image formats.  The resulting image will be the same 8/24
  318.     bit mode as the original image.  As such, it's generally recommended
  319.     that you switch to 24-bit mode before doing the Pad command, for best
  320.     results.
  321.  
  322.     Also, there are associated X resources:  'xv.pad.TYPE.val[0-9]'
  323.     and 'xv.pad.TYPE.name[0-9]', that let you specify the values
  324.     and names of additional entries in the 'Default' menu in the 
  325.     Pad dialog box.  'TYPE' can be either 'color', 'bggen', or 'load',
  326.     depending on which 'method' of background generation you're using.
  327.  
  328. Added Feature:  In 'bggen', you can now specify colornames as with other
  329.     X programs (ie, by name ('red'), or by value ('#ff00ff')).  Note
  330.     that the '#' character is treated specially in some shells, and
  331.     probably need to be escaped with a '\' (or wrap single-quotes around
  332.     the whole value)
  333.  
  334. Added Feature:  In 'bggen', added '-G geom' option to specify a 'repeat'
  335.     geometry.  If given, the program generates its gradient into a 
  336.     small (-G geom) image, which is 'center-tiled' into the 
  337.     main (-g geom) image.
  338.  
  339. Change:  In 'bggen', change '-s' option to '-h'.  Screw backward compatibility,
  340.     it makes more sense.
  341.  
  342. Enhancement:  Massive reorganization of the 'xv controls' window.  Made room
  343.     for new command buttons (cut, copy , paste, clear, PadImage, About XV,
  344.     etc. simplified appearance by tossing many buttons into new 'menu'
  345.     buttons ('Root', 'Windows', 'Image Size').
  346.  
  347. Added Feature:  Added a 'show/hide hidden files' toggle in the schnauzer
  348.     windows.  (When enabled (as it is by default), it hides all files 
  349.     beginning with a '.'.  As such, it's Unix-centric, but so is the 
  350.     rest of the program...)
  351.  
  352. Bug Fix:  When 'dragging' files in the schnauzer windows, the window could
  353.     scroll entirely too quickly (on a fast machine).  Added a limit.
  354.  
  355. Bug Fix:  Fixed 'window-centering' code (that which pops up windows with
  356.     an appropriate button centered under the mouse, such as the save 
  357.     window), so that it correctly positions the window.  It works on
  358.     a DEC Alpha running OSF 2.0, under Mwm, Olwm, and Twm.  Hopefully,
  359.     it'll work for you!
  360.  
  361. Enhancement:  Added code to display keyboard equivalents in the various 
  362.     menu buttons.
  363.  
  364. Enhancement:  Added keyboard equivalents for remaining algorithms, just to be
  365.     consistent.  The equivs are listed in the algorithms menu, and
  366.     all use the meta key.
  367.  
  368. Enhancement:  Got rid of the 'Blur*' choices on the Algorithms menu,
  369.     and replaced it with a single 'Blur' routine that prompts for a value,
  370.     making it cleaner, and more versatile, with only a slight convenience
  371.     trade-off.  Keyboard equivalent:  'meta-l'
  372.  
  373. Added Feature:  Added a nifty 'Pixelize' algorithm.  (Keyboard equivalent:
  374.     'meta-p').  Again, operates on the current selection, if any, 
  375.     otherwise it operates on the whole picture.  Now you too can make 
  376.     photos look like their from those 'real-life cop shows'.  
  377.     (Non-U.S. folks can just ignore that cultural reference.)  Anyhow,
  378.     one neat feature is that it the pixels don't have to be square.  
  379.     Try something like '16x1' for a neat effect.
  380.  
  381. Added Feature:  A 'save selected area' checkbox in the save window.  Lets you
  382.     easily save portions of an image (without cropping, etc).  Two notes:
  383.     if you save 'at displayed size' (the default), only the area of the
  384.     selection that is visible in the image window will be saved.
  385.     Alternately, if you save 'at normal size', you *can* have the selection
  386.     go off the edges of the displayed image (or subimage).
  387.  
  388. Enhancement:  You can now enter negative values for the Gamma command in
  389.     the graphs in the color editor.  Negative values produce the same
  390.     curve as their corresponding positive values, except that they are
  391.     horizontally flipped.  (ie, the curve starts at the top and goes
  392.     down).        (Alan Blanchard  (alan@abraxas.mbt.washington.edu))
  393.  
  394. Bug Fix: Memory leak if '-ncols 0' on a > 1-bit display
  395.  
  396. Change:  In the Save window, moved 'File list' checkbox into the Format    menu.
  397.  
  398. Enhancement:  You can now type TAB key in Load/Save window to do automatic
  399.     filename completion.  It only for 'simple' filenames (ie, no '/'
  400.     chars, no pipes, no '~', etc.), but it's still a very handy thing.
  401.  
  402. New Feature:  Added 'Rotate (Copy)' and 'Rotate (Clear)' algorithms (keyboard
  403.     equivalents 'shift-meta-t' and 'meta-t' respectively) that let
  404.     you rotate the image (or the current selection) by any arbitrary
  405.     amount.  The only difference between the algorithms is that the
  406.     second one clears the old selected area first (equivalent to:
  407.     'cut, rotate, paste'), whereas the first algorithm is equivalent
  408.     to 'copy, rotate, paste')
  409.  
  410. Enhancment:  Added 'meta-u' keyboard equivalent for 'Undo all' algorithm.
  411.  
  412. Enhancement:  'Flip Horizontal' and 'Flip Vertical' commands now operate on
  413.     selected area, if any.  (Otherwise, they do the whole picture.)
  414.  
  415. Enhancement:  Put a 'progress meter' into most of the potentially 
  416.     time-consuming functions (algorithms, smooth, resize, etc.)
  417.  
  418. Bug Fix:  The 'Oil Paint' algorithm now does the Right Thing on color 
  419.     images.  (Simply running the grayscale algorithm on the red, green,
  420.     and blue planes separately was the Wrong Thing, as it introduces
  421.     goofy fringe effects in colors that weren't originally in the image).
  422.  
  423. Added Feature:  New 'blend' algorithm (keyboard equivalent: Meta-b).  Takes
  424.     the current selection (or the whole pic, if no selection), and clears
  425.     the rectangle such that the edges remain the same color, the center
  426.     becomes the average color of all the edge pixels, and all other 
  427.     pixels get an appropriate color based on their distance from the edge
  428.     and their distance from the center.
  429.  
  430. Enhancement:  Algorithms (selected from the 'Algorithms' menu) now will only
  431.     affect the selected area, assuming there is a selection.  Otherwise,
  432.     they will affect the entire image, same as they used to.
  433.  
  434. Change:  After deleting the last file in the 'xv controls' list, it will
  435.     go back to displaying the XV logo.
  436.             (Tom Hinds  (rocker@cs.bu.edu))
  437.  
  438. Bug Fix:  Writing GIF files in the B/W Dithered color mode would result in
  439.     black & white getting reversed.
  440.             (Thomas Braeunl  (Braeunl@informatik.uni-stuttgart.de))
  441.  
  442. Enhancement:  If you accidentally start tracking a 'zoom in' or 'pan'
  443.     rectangle, releasing the Ctrl key will abort the operation.
  444.  
  445. Enhancement:  'Meta-8' now toggles between the 8 and 24 bit modes.
  446.  
  447. Change:  If you specify '<xvlogo>' as the filename in the load window, it will
  448.     re-load the XV title image.
  449.  
  450. Bug Fix:  If the last file in a list was broken in some way and was either 
  451.     shown as Text, or not shown at all, the Next/Prev buttons weren't 
  452.     getting enabled/disabled appropriately.
  453.                 (R.P. Rodgers  (rodgers@nlm.nih.gov))
  454.  
  455. Enhancement:  Used to be, when you saved a GIF (or other 'simple' format with 
  456.     no format-specific dialog box), XV would stick the 'saved' filename at
  457.     the end of the 'xv controls' list.  However, if you were in the 
  458.     middle of a bunch of files, this would cause you to 'lose your
  459.     place'.  Folks complained.  XV now does the Right Thing (tm).  When
  460.     you save (in *any* format) it adds an entry to the end of the list,
  461.     but does not move your selection.  When you *load* a new file (via
  462.     the load or schnauzer windows), the name also gets stuck at the end 
  463.     of the list *and* the selection is moved.
  464.  
  465. Change:  As the default cursor in the image window is now the 'arrow' cursor,
  466.     the cursor affected by the '-cursor' option/resource is now the arrow
  467.     cursor used in all windows.
  468.  
  469. Enhancement:  XV now comes with version 3.30 of the libtiff TIFF library.
  470.     This version should run correctly on 64-bit machines.  Note, however
  471.     that there the TIFF library no longer has any non-ANSI C support,
  472.     meaning you *must* have an ANSI C compiler (ie, gcc) to compile it.
  473.     This should *not* be a big problem in 1994...
  474.  
  475. Enhancement:  Load and Save 'windows' now point to separate directories.  Such
  476.     a simple, obvious misfeature, I don't know how it's survived this long.
  477.     (Big Hint:  The author doesn't actually *use* the program very much!)
  478.  
  479. Enhancement:  Modified/improved 'selection' rectangle handling (formerly
  480.     called the 'crop rectangle').  It now flashes, making it much
  481.     easier to find.  It also stays around when you zoom, unzoom,
  482.     pan, or resize the image.  This lets you draw a selection, and
  483.     zoom in on the corners (or whatever), and get the selection positioned
  484.     perfectly before doing the crop (or whatever).
  485.  
  486. Added Feature:  XV now can read and write uncompressed 24-bit Targa files,
  487.     interlaced or non-interlaced, with the origin in the
  488.     bottom-left or top-left   (by Derek Dongray  (dongray@genrad.com))
  489.  
  490. Change:  Redesigned the load and save windows (okay, so it's really only
  491.     one window...).  The number of radio buttons for different 
  492.     image formats was getting out of hand, and taking up a lot of
  493.     valuable screen real estate.  The new load/save window is smaller
  494.     (well, the save is smaller, the load is now the same size as the
  495.     save), cleaner, has room for 6 more lines in the directory window,
  496.     and has a fish in it.  A win, by my book.
  497.  
  498. Bug Fix:  Found (and killed) memory leak in the Schnauzer, which would
  499.     occur during icon generation
  500.  
  501. Bug Fix:  IRIS RGB i/o code didn't work on 64-bit machines.
  502.  
  503. Added Feature:  '-RM' command line option (no X resource equivalent).
  504.     When specified, upon exit XV will delete *all* files listed on 
  505.     the command line.  Handy if you're writing a program, and you
  506.     want to use XV to display graphics automatically.  You write your
  507.     image(s) out, fork off a background XV to display the image(s),
  508.     and when the user quits XV, the image files will be removed, saving
  509.     you the trouble of cleaning up the files yourself.
  510.  
  511. Added Feature:  Nifty new 'Grab' dialog box whenever you issue the Grab
  512.     command.  You can now specify a grabDelay from within XV, and you
  513.     can also automagically hide all XV windows during the grab.
  514.     Also, now supports 'autograb' command, which waits the specified
  515.     delay time, and then grabs whatever window the cursor happens
  516.     to be in at the time.  This gives you a way to capture popup menus,
  517.     rubber-band selections, and other things that require the mouse 
  518.     button to be held down.  (Note: AutoGrab searches upward and grabs
  519.     the 'top-level' window that the cursor is in, rather than just the
  520.     immediate child window, as it's far easier to take too much and 
  521.     throw away the extra than to take too little...)
  522.  
  523.     One note: between the time a Grab or AutoGrab command is issued, 
  524.     from the dialog box, and the time that the command complets, all
  525.     'image file changing' commands ('Next', 'Prev', 'Load', etc.) are
  526.     disabled, (as is Grab), for perfectly good reasons.
  527.  
  528. Enhancement:  The '-expand' option (and the 'xv.expand' resource) now takes
  529.     either a single value (as it used to), or a pair of values 
  530.     separated by a colon.  This lets you set different horizontal and
  531.     vertical expansion/compression factors.  (eg, '-expand 3:-4' will
  532.     make the displayed width 3 times the image width, and the displayed
  533.     height 1/4th the image height.)
  534.  
  535. Change:  'Relaxed' floyd-steinberg dithering when displaying 24-bit images
  536.     (in 24-bit mode) on non-truecolor displays.  Fewer goofy artifacts.
  537.  
  538. Enhancement:  Now (unless '-nostat' is specified) stats filenames specified
  539.     on the command line.  Only 'plain' files will be added to the 
  540.     list of filenames.  This lets you type 'xv *' in a directory
  541.     with subdirectories, and not have the subdirs added as (unloadable)
  542.     files.
  543.  
  544. Change:  Change 'static char' in all bitmap files to 'static unsigned char',
  545.     as some compilers object to values > 0x7f being assigned to signed
  546.     char's.  
  547.  
  548. Change:  Added 'click right button to open menu' string in the XV logo 
  549.     image, just to make things a little more obvious.
  550.  
  551. Added Feature:  Changed command-line argument handling.  All of the
  552.     'flag' options (-perfect, -smooth, etc.) now take '+' or '-' as
  553.     the first char of the option name.  If you use '-' (ie, '-perfect')
  554.     it *forces* on the option (it used to toggle the option on or off).
  555.     Similarly, if you use '+' as the first char of the option ('+perfect')
  556.     it forces *off* the option.  This lets you put the program in a known
  557.     state (regardless of what X resource settings you may have set up).
  558.     Handy for sysadmins who want scripts using XV to behave the same
  559.     no matter what X defaults the users may have set up.
  560.             (idea: Peder Langlo  (respl@mi.uib.no))
  561.  
  562. Change:  XV no longer looks in '.Xdefaults-machinename' as a place to find
  563.     your X resources.  The 'gethostname()' call was leading to 
  564.     portability problems, and in any event, you should load up your
  565.     resources into the resource database (via 'xrdb') when you log in,
  566.     the way God intended...
  567.  
  568. Added Feature:  When cropped (or zoomed), ctrl-Middle in the image window
  569.     will let you pan the visible region of the image around, which is
  570.     much cooler than zooming out and zooming back in on a different
  571.     area.        (idea: Peder Langlo  (respl@mi.uib.no))
  572.  
  573. Enhancement:  There's now a '..' entry in the load/save window file list,
  574.     to make maneuvering slightly easier.
  575.  
  576. Added Feature:  XV now can read and write uncompressed 24-bit Targa files
  577.             (by Derek Dongray  (dongray@genrad.com))
  578.  
  579. Enhancement:  XV can now handle 16-bit greyscale TIFF files.
  580.             (Leon Avery  (leon@eatworms.swmed.edu))
  581.  
  582. Bug Fix:  Memory leak in 24-to-8 bit conversion routines found and removed.
  583.             (Scott D. Heavner  (sdh@po.cwru.edu))
  584.  
  585. Enhancement:  XV now has a 'chdir' button (and menu item) in the Schnauzer
  586.     window.  It lets you directly chdir to some other directory without
  587.     going through the old 'up to the root and then down one dir at a time'
  588.     process.
  589.  
  590. Change:  Typing '^C' in schnauzer windows now does a 'chdir' command, rather
  591.     than opening/closing the 'xv comments' window.  To get the comment
  592.     window, type '^C' in the image window.
  593.  
  594. Change:  XV now eats BadWindow errors on the X_GetProperty request.
  595.     These happen on certain SGI X servers after the 'snapshot' program
  596.     has been run.  The window hierarchy gets trashed by snapshot.
  597.     (Run 'xlswins' if you want to see this.)
  598.             (Ben Simons  (ben@lewis.vislab.su.edu.au))
  599.  
  600. Bug Fix:  The 'edge detection' algorithm wouldn't detect edges along the \
  601.     direction.  Better edge detection algorithm has been added.  (Though
  602.     the old is still there for the 'embossing' effect.
  603.             (David Robinson  (drtr@mail.ast.cam.ac.uk))
  604.  
  605. Bug Fix:  A4 and B5 paper sizes in PostScript save dialog were slightly wrong.
  606.  
  607. Enhancement:  XV now supports 'gzipped' files, as well as 'compressed' files.
  608.     Needless to say, you need to have the 'gunzip' program installed
  609.     on your system for this to work.
  610.                 (Jean Liddle  (jliddle@mrcnext.cso.uiuc.edu))
  611.  
  612. Enhancement:  Added 'A3' paper size in 'save as PostScript' dialog box.
  613.  
  614. Bug Fix:  BMP file reading wasn't working on files created by ImageMagick.
  615.             (Roy Johnson  (rjohnson@shell.com))
  616.  
  617. Enhancement:  XV now sniffs out whether or not you have a 24/32 bit 
  618.     TrueColor or DirectColor visual, and if so, uses it by default
  619.     (rather than always using the 'Default Visual' of the display,
  620.     which is generally an 8-bit PseudoColor visual, even on 24-bit
  621.     systems).  
  622.  
  623.     Also, both the '-visual' option and the 'xv.visual' X resource now
  624.     also take 'default' as a value, which means 'use the default 
  625.     visual of the display', for folks who want 'the old behavior'.
  626.  
  627. Change:  Modified the 'Timer()' function in xvmisc.c to use select() instead
  628.     of 'setitimer()', which let me get rid of all the FOO_SIG macros
  629.     and such in xv.h, and basically get rid of one of the primary
  630.     portability annoyance.
  631.  
  632. Bug Fix:  In the Schnauzer, when generating icons, if it decides a file
  633.     is potentially an XBM file, loads it, finds out it isn't, it will
  634.     be displayed as an UNKNOWN icon (?), instead of an ERROR icon.
  635.  
  636. Change:  When tracking pixel values in the image window, it now displays
  637.     the color of the pixel in Hex, as well as in decimal, so that you
  638.     can use this value directly in X color specifications, without
  639.     needing to do the dec->hex conversion by hand.
  640.  
  641. Bug Fix:  In the 'xv load' window, if you clicked below the 'Load All' button,
  642.     you could get a 'Prev Name' button to appear.
  643.                 (Erwan Moysan  (Erwan.Moysan@irisa.fr))
  644.  
  645. Bug Fix:  .xvpics subdirectories are now created with the same permissions
  646.     as their parent directories.  Likewise, thumbnail files (in .xvpics
  647.     dirs) are now written with the same permissions as the original
  648.     files.
  649.  
  650. Bug Fix:  In XV 3.00, the PDS/VICAR module got screwed up somehow, and 
  651.     no longer worked correctly.  Fixed.
  652.  
  653. Change:  Stuck SysV-style signal handler definitions and rand/srand defs in
  654.     xv.h, for better compatibility    (David Brooks (dbrooks@osf.org))
  655.  
  656. Bug Fix:  'Pass 2 color allocation' could potentially be performed on a
  657.     visual type with no colormap, which would be a bad thing, believe me.
  658.  
  659. Bug Fix:  '-loadclear' wasn't working correctly
  660.  
  661. Bug Fix:  Potential segmentation fault when Uncompressing files fixed.
  662.         (Dana Jacobsen  (jacobsd@solar.cor2.epa.gov))
  663.  
  664. Bug Fix:  If printing XV-generated Color PS files on a Grey/BW PS printer,
  665.     the printer may have run out of memory, due to a memory leak in the
  666.     color->gray PS code.    (Klaus Schnepper  (df40@master.df.op.dlr.de))
  667.  
  668. Bug Fix:  The '-hist' and '-norm' options weren't actually working.
  669.  
  670. Bug Fix:  If you loaded a GIF89 file with a lot of ignored-by-xv extensions,
  671.     and you didn't have the info or controls windows up, the constant
  672.     popping up of 'warning' messages was real annoying.  They don't
  673.     do that anymore.
  674.  
  675. Enhancement:  If you specify the '-quit' option, XV turns off any '*map' 
  676.     options (-cmtmap, -cemap, -imap, etc.) you may have turned on,
  677.     as you won't have an opportunity to *use* any of the windows before
  678.     the program exits.  No need to map them.
  679.  
  680. Bug Fix:  XV now correctly positions the window on initial load (ie, 
  681.     'xv -max' will now work again)
  682.  
  683. Bug Fix:  When you loaded a new image, if XV felt a need to move the window,
  684.     it would draw the new image at the old window size, and then draw
  685.     it again at the new image size.  This was a major inefficiency with
  686.     24-bit images.
  687.  
  688. Enhancement:  'Remove' key on DEC keyboards now functions like '^D', so it
  689.     can be used to delete files, etc.
  690.  
  691. Added Feature:  XV can now read a variety of Amiga IFF ILBM formats.
  692.             (Thomas Meyer  (i03a.zfn.uni-bremen.de)
  693.  
  694. Change:  XV should now recognize PS files that start with '%!' (as it did) and 
  695.     with '^D%!' (as generated by MS-Windows 3.1)
  696.  
  697. Bug Fix:  If you use '-poll' and '-maxpect', only the first image would be
  698.     shown 'big'.   (Bruce Labow  (labow@itd.nrl.navy.mil))
  699.  
  700. Change:  'Relaxed' getwd handling.  You can now maneuver through directories
  701.     even if you can't read the contents of one of the parent 
  702.     directories (ie, mode 'rwx--x--x').  All parent directories must
  703.     have execute permission, however.
  704.         (Andrew Brooks  (arb@comp.lancs.ac.uk))
  705.  
  706. Change:  Cleaned up 'file type' handling code in source, which should make
  707.     it easier to build XV on 'non-standard' platforms.
  708.             (Cameron Simpson  (cameron@cse.unsw.edu.au))
  709.  
  710. Enhancement:  XV previously only recognized files that began with '#define'
  711.     as being (potentially) XBM files.  It now also will treat files
  712.     that start with '/*' as potential XBM files, which should cover 
  713.     nearly all the XBM files out there.
  714.  
  715. Bug Fix:  If you moved or copied files from one schnauzer window to another,
  716.     and for some reason the files failed (ie, 'moving' from a write-
  717.     protected directory), the icons that failed to move would still be
  718.     lit (as they should be), but they didn't *think* they were lit!
  719.  
  720. Bug Fix:  When moving/copying files via the schnauzer, it would always 
  721.     create '.xvpics' subdirectories in the destination folder, instead
  722.     of "only when the source folder has a .xvpics subdirectory", as
  723.     was intended.
  724.  
  725. Enhancement:  'relaxed' the AutoCrop algorithm for 24-bit images.  Since
  726.     24-bit images (JPEG, in particular) tend to have some noise in
  727.     them, the 'everything must be equal' criteria of the normal autocrop
  728.     algorithm would prevent any cropping from happening.  The new 
  729.     algorithm (which only affects 24-bit images) crops lines if all
  730.     the pixels are within a certain percentage of one and other.
  731.             (Paul Close  (pdc@sgi.com))
  732.  
  733. Bug Fix:  BMP file i/o fixed.  24-bit files weren't done correctly, and
  734.     certain files would blow up that Windows-based programs would 
  735.     handle correctly.  (Pesky vague format specifications...)
  736.             (John Walker  (kelvin@autodesk.com))
  737.  
  738. Bug Fix:  Unified 'cursor keys' into one function.  Certain keyboards 
  739.     generate an interesting variety of keysyms when you hit the 'pageup'
  740.     'pagedown', 'home', and 'end' keys (and shifted arrow keys), and 
  741.     I had code to deal with that problem scattered around the source.
  742.     Practical upshot:  'pageup/down' might work in certain controls/
  743.     windows, and not others.
  744.  
  745. Bug Fix:  XV would crash if you tried to grab a rectangular region of the
  746.     root window (and both the starting and ending points of the rect
  747.     were in the root window).
  748.  
  749. Bug Fix:  Memory leak in xvpbm.c    (Joe Peterson (joe@avs.com))
  750.  
  751. Bug Fix:  XV would crash if you used '-nopos'
  752.             (Nick Sayer  (mrapple@quack.kfu.com))
  753.  
  754. Change:  All files in the distribution should be 14 chars or less (to
  755.     avoid SysV name-length limitations on some systems)
  756.  
  757. Change:  Broke up exceedingly large functions in xv.c and xvevent.c,
  758.     as they tended to annoy compilers and optimizers...
  759.  
  760. Bug Fix:  Use of GS_LIB in Makefile broke if folks had it defined in their
  761.     environment already.
  762.  
  763. Bug Fix:  XV assumed that 24-bit deep visuals had 32 bits per pixel.  While
  764.     this is generally true, apparently there are some servers that only
  765.     want 24-bit pixel values.
  766.             (Steven Schoch  (schoch@starnet.com))
  767.  
  768. Bug Fix:  It would crash if it tried to draw an MenuButton that had no menu
  769.     associated with it yet.  (A timing issue that occurred on some 
  770.     systems)
  771.  
  772. Bug Fix:  If you tried to use '-root' and '-gamma' simultaneously, it'd
  773.     crash.  Now it doesn't.
  774.  
  775. Bug Fix:  On some systems, XV would crash when clearing an old root image
  776.     and installing a new one.  
  777.  
  778. Added Feature:  Additional options to 'bggen'.  You can now specify the
  779.     size of the generated image with '-g geometry'.  The generated
  780.     images are now by default in PPMRAW format.  You can generate
  781.     'ascii' images by using the '-a' flag.  You can now ROTATE the
  782.     generated image by any arbitrary amount with the '-r rot' flag,
  783.     where rot as a (counter-clockwise) rotation, in degrees.
  784.  
  785. Enhancement:  'bggen' has been fixed.  It now automatically senses
  786.     the display size, and by default, generates an image of that
  787.     size.    (PeterVG (pvgunm@polaris.unm.edu))
  788.  
  789. Change: In XV 3.00, I went to a somewhat faster (serpentine) color dithering
  790.     algorithm (used in conjunction with Smoothing on non-TrueColor
  791.     displays, when in 8-bit mode).  No one much noticed the speed 
  792.     improvement, and several people complained that images now looked 
  793.     worse than they used to, so I've put it back the way it was.
  794.         (Kenny Zalewski (zalewk@rpi.edu))
  795.  
  796. Enhancement:  If you are running XV in 'locked 8-bit mode', and you load a
  797.     JPEG image, XV will now use the JPEG quantizer, which produces better
  798.     results than the normal XV quantizers.  This makes XV 3.00 behave 
  799.     like it did in XV 2.21.
  800.         (Jim Lick  (jim@pi-chan.ucsb.edu))
  801.  
  802. Bug Fix:  xvsunras.c still had some problems on 64-bit machines.
  803.         (Dave Hill  (ddhill@zk3.dec.com))
  804.  
  805. Change:  Twiddled code in xvsmooth.c.  Certain compilers complained about a
  806.     potential divide-by-zero (not that it could ever happen, but try
  807.     telling the compiler that...)
  808.  
  809. Change:  Twiddled code in xvps.c.  Optimizer in IRIX-4.0.5 broke a 
  810.     calculation.  Expression has been simplified.
  811.  
  812. Bug Fix:  YCbCr->RGB conversion in xvtiff.c wasn't being done correctly,
  813.     according to the TIFF 6.0 standard.
  814.             (Karsten Spang  (krs@kampsax.dk))
  815.  
  816. Portability:  Added explicit typecasting to a few lines of xvtiff.c (HP 
  817.     compilers objected.)
  818.  
  819. Portability:  Changed intances of '#ifdef macII' in xv.h to '#ifdef aux'
  820.             (Declan A. Rieb  (darieb@sandia.gov))
  821.  
  822. Bug Fix:  XV wouldn't correctly read XBM files with 1-digit-long values
  823.     (ie, '0x9' instead of '0x09').  Fixed.
  824.     (spotted by: Berthold Dettlaff  (dettlaff@informatik.uni-stuttgart.de))
  825.  
  826. Bug Fix:  xvtiffwr.c now writes out XRESOLUTION and YRESOLUTION flags, which
  827.     are apparently required by some other tiff-readers
  828.             (Larry W. Virden  (lwv26@cas.org))
  829.  
  830.  
  831. XV 3.00a intermediate bug-fix release
  832. -------------------------------------
  833. Bug Fix:  core dumps in schnauzer fixed.  (br->lit wasn't getting zeroed 
  834.     when you moved files to another directory)
  835.  
  836. Bug Fix:  To vdcomp.c.  Strings buffers to hold filenames were too short.
  837.         (Anthony A. Datri <aad@lovecraft.siemens.com>)
  838.  
  839. Bug Fix:  If you put an image using the Std. Colormap into the root window
  840.     (ie, a 24-bit image on an 8-bit display), and exited XV, the colors
  841.     were freed (and would get overwritten)
  842.  
  843. Bug Fix:  'Update' command in Schnauzer now checks both 'mtime' and 'ctime'
  844.     fields when comparing dates of a file and its thumbfile.
  845.  
  846. Bug Fix:  XV load window didn't correctly handle 1-character top level 
  847.     directory names (ie, '/u').
  848.  
  849.  
  850.  
  851. XV 3.00 Release
  852. ---------------
  853. Enhancement:  Faster 332 dither algorithm when displaying 24-bit images on
  854.     non-TrueColor/DirectColor displays.
  855.  
  856. Added Feature:  'trimming keys'.  You can now easily trim off one pixel from
  857.     any edge of an image by pressing Ctrl and one of the arrow keys while
  858.     inside the main window.  Now you can use the cropping rectangle for a 
  859.     first 'rough cut', and do the precision work with the trimming keys.
  860.  
  861. Enhancement:  Added '-grabdelay' command line option (no resource), which
  862.     lets you specify a delay between the time the 'Grab' command is issued,
  863.     and the time that the cursor changes becomes owned by XV, regardless of
  864.     what window it's in.  This lets you hide the XV windows (or whatever)
  865.     before the actual screen grab takes place.  The delay can be set 
  866.     to 0 (the default) up to 15 seconds.
  867.                 (Jason Berri  (berri@aero.org))
  868.  
  869. Bug Fix:  Was crashing if you handed it a gif with multiple images in it.
  870.  
  871. Change:  Switched it back so that when you Delete a file in the xv controls
  872.     list, the next file in the list (if any) is automagically loaded.
  873.  
  874. Change:  Broke huge series of 'else if's in xv.c into two halves.  Broke some
  875.     compilers (on VMS and some PC Unixes)    
  876.             (Rick Dyson  (dyson@iowasp.physics.uiowa.edu))
  877.  
  878. Change:  Improved resource-handling code.  No longer necessary to 
  879.     define X11R5, and should work on certain HP/Apollo workstations
  880.     where it didn't used to.
  881.  
  882. Change:  Modifications to make XV somewhat more POSIX compliant.
  883.             (Mark W. Snitily (mark@zok.sgcs.com))
  884.  
  885. Bug Fix:  Changes to xvgrab.c to make it work on 64-bit machines.
  886.             (Matt Thomas  (thomas@netrix.lkg.dec.com))
  887.  
  888. Change:  migrated all memcpy(), memcmp(), memset(), and bcopy(),
  889.     bcmp(), bzero() calls to xvbcopy(), xvbcmp(), and xvbzero()
  890.     functions in xvmisc.c.  Necessary because the b*() routines
  891.     don't exist in Solaris, and not everyone has the mem*() routines
  892.     (and besides, memcpy() doesn't even work correctly)
  893.  
  894. Added Feature: Added '-icgeometry' cmd-line option (and 'iconGeometry' 
  895.     resource) to specify initial position of the icon when you 
  896.     start XV in '-iconic' mode
  897.  
  898. Added Feature:  XV can now display multi-page (currently only PostScript)
  899.     files.  If you are viewing a multi-page file, the title of the image
  900.     window will show 'page 1 of 37' (or whatever) as an indication.
  901.     You can use the PageUp and PageDown keys (Next and Prev on some)
  902.     on your keyboard to do page through the file, and you can type ctrl-P
  903.     to pop-up a 'go to page #' dialog box.  These keys must be typed in
  904.     the image window.
  905.  
  906. Enhancement:  Added '-name' command line option (no corresponding resource)
  907.     that lets you specify the string to be displayed in the image window's
  908.     titlebar.  Useful if you're calling XV from some other program,
  909.     and you don't want the titlebar to say 'xv /tmp/prog2315a' or something
  910.     like that.    (Idea from:  Bill Silvert (silvert@biome.bio.ns.ca))
  911.  
  912. Added Feature:  XV can now read and display PostScript files, as long as you
  913.     have the 'Ghostscript' package installed.  
  914.     Added '-gsdev str', '-gsgeom geom' and '-gsres int' command-line
  915.     options (and gsDevice, gsGeometry, and gsResolution X resources).
  916.     Thanks to Michael Gleicher (mkg@stealth.plk.af.mil) for the idea, 
  917.     and thanks to Harald Hanche-Olsen (hanche@ams.sunysb.edu) 
  918.     and L. Peter Deutsch (ghost@aladdin.com) for PostScript help.
  919.  
  920. Bug Fix:  Minor memory leak in xvgrab.c fixed.
  921.             (Tony Sweeney  (sweeney@ingres.com))
  922.  
  923. Added Feature:  Added '-drift dx dy' option (and 'driftKludge' resource)
  924.     for the benefit of folks who experience a 'drifting' of the
  925.     image window whenever it's resized, etc.  If the window drifts down
  926.     and to the right, use negative values to compensate.  If the window
  927.     drifts up and to the left, use positive values to compensate...
  928.  
  929. Change:  Changed 'schauzer' cmd-line opts and resources to:
  930.     '-vsdisable' '-vsgeometry' '-vsmap', '-vsperfect' and
  931.     vsDisable, vsGeometry, vsMap, vsPerfect
  932.  
  933. Added Feature:  XV now reads some of the more common types of PCX files
  934.     (1-bit-per pixel, 1-8 planes and 8-bits-per-pixel, 1-plane).
  935.     (thanks to Eckhard Rueggeberg  (Eckhard.Rueggeberg@ts.go.dlr.de))
  936.  
  937. Added Feature:  Added a 'file list' check box in the Save window.  When
  938.     selected, XV will write out the list of file names currently
  939.     loaded into the 'xv controls' window, for use with the '-flist'
  940.     option described below.
  941.  
  942. Added Feature:  Added the '-flist' option and 'fileList' resource.  Both
  943.     let you hand XV a textfile that contains a list of image filenames,
  944.     one per line.  When using the fileList resource, be sure to specify
  945.     the complete pathname to the filelist file, so that XV will be able
  946.     find it no matter what directory you start XV from.
  947.                 (Brian Gregory  (bgregory@megatest.com))
  948.                 
  949. Enhancement:  When '-quit' option specified, and you *aren't* using
  950.     the root window, *any* button press or key press inside the 
  951.     main image window will exit the program.  Use this if you're 
  952.     calling XV from some other program, and only wish to view a 
  953.     single image, and be donw with it...
  954.                 (Stephen Mautner (stephen@cs.utexas.edu))
  955.  
  956. Enhancement:  Added semi-useful '-nofreecols' option.  Only has an effect
  957.     when running a slideshow (with the '-wait' option).  Prevents
  958.     the freeing of colors between images, thereby avoiding ugly
  959.     effects on PseudoColor displays.  Of dubious merit, as later images
  960.     will look worse (if they use different colors than the first 
  961.     images), and XV *REALLY* isn't meant for doing animation.  For low-
  962.     speed slideshows, you're best off *not* using this option, because
  963.     every image will get the 'right' colors.  See the '-loadclear' option
  964.     to avoid nasty color-reallocation effects...
  965.  
  966. Bug Fix:  When polling, if the file doesn't exist, XV will wait for it to
  967.     be created.
  968.  
  969. Bug Fix:  Auto-apply while dragging didn't work the 'first' time you tried
  970.     to use it.
  971.  
  972. Change:  When running XV in -ncols 0 mode (or, running on a 1-bit display),
  973.     the default image (the XV logo) is generated differently, so as to
  974.     be easier to read.
  975.  
  976. Enhancement:  New version of JPEG library (version 4a) hooked into XV.  JPEG
  977.     Save dialog now has a 'smoothing' dial.  JPEG files now
  978.     support comments.
  979.  
  980. Enhancement:  New version of TIFF library (version 3.2) hooked into XV.
  981.  
  982. Bug Fix:  When you're doing a slideshow (with the '-wait' option), XV will
  983.     now determine if the image window is iconified.  If it is, it *won't*
  984.     wait for the window to be drawn before starting the 'wait' period.
  985.     Previously, if the window was iconified, XV would sit there (and not
  986.     move on) until you deiconified it.  Needless to say, I'm sure *someone*
  987.     perferred the previous behavior...  Oh well!
  988.  
  989. Added Feature:  Added '-mfn' and 'monoFont' string resource.  Lets the user
  990.     specify what font to use for TextView windows, and other places where
  991.     the mono-spaced font is used.
  992.  
  993. Enhancement: GIF, and PBM should now have slightly more informative info 
  994.     when you build icons in the schnauzer 
  995.     (ie, GIF87/89 and Raw/Ascii PBM/PGM/PPM)
  996.  
  997. Added Feature:  'License' button now hooked up.  Gives you the current
  998.     licensing info on XV.
  999.  
  1000. Enhancement:  When opening up a schnauzer window that will be displaying the
  1001.     same data as an already existing schnauzer window (ie, when using
  1002.     the Open Win command in the schnauzer), the icon data and such
  1003.     is just copied, rather then being re-read from disk.  MUCH faster.
  1004.  
  1005. Enhancement:  Comments are now written in formats that support comments
  1006.     (GIF, TIFF, PBM, PM)
  1007.  
  1008. Added Feature:  Two new 'root' display modes, symmetrical tiled, and
  1009.     symmetrical mirrored.        (Dave Lampe  (djl@ptc.timeplex.com))
  1010.  
  1011. Change:    You can now TextView a compressed file, and it'll display the
  1012.     uncompressed data.
  1013.  
  1014. Bug Fix: TextView windows now show correct # of lines (in ASCII mode) for
  1015.     files/comments/whatever that end with a \n character
  1016.  
  1017. Enhancement:  XV should now work on 5-bit displays.  Not that there should
  1018.     *be* 5-bit displays, but that's not my problem...
  1019.  
  1020. Change: 'Expansion' field in info window is now shown in terms of 
  1021.     percentages, rather than factors, in keeping with the SetSize
  1022.     command.
  1023.  
  1024. Change:  Stopped making the pop-up dialog windows be transient windows
  1025.     of some other XV window, as (what with the keyboard equivalents
  1026.     and such), it's very difficult to determine which is the
  1027.     appropriate 'parent' window.  Given the mwm restacks windows
  1028.     so that the parent is right below the pop-up, this is very
  1029.     annoying when you issue a command in some window, and some other
  1030.     window leaps in front of you.  
  1031.  
  1032. Added Feature:  Added 'SetSize' command ('S' shortcut).  Pops up a dialog
  1033.     box that asks you what the displayed image size should be
  1034.     (in pixels, or expansion percentages)
  1035.  
  1036. Enhancement:  Whenever you create or delete a file the browser and 
  1037.     Load/Save windows will automatically rescan (if necessary)
  1038.  
  1039. Added Feature:  Added '-cmtgeometry' option and 'commentGeometry' resource
  1040.     to specify size/position of 'comments' window.  Added '-cmtmap' 
  1041.     option and boolean 'commentMap' resource to specify whether comment
  1042.     window should be mapped when XV is started.
  1043.  
  1044. Added Feature:  Added a 'comments' window to display any comments that might
  1045.     be found in the current loaded image file 
  1046.  
  1047. Added Feature:  Added '-tgeometry' and 'textviewGeometry' resource to control
  1048.     size and positioning of textview window(s)
  1049.  
  1050. Enhancement:  'compress'ed file handling improved somewhat.  Can now deal
  1051.     with piped-in compressed files, or compressed files that don't 
  1052.     end with '.Z'
  1053.  
  1054. Enhancement:  You can now (probably) use shift-up-arrow and shift-down-arrow
  1055.     on keyboards that don't have 'PgUp' and 'PgDn' keys, and use
  1056.     shift-PgUp and shift-PgDn on keyboards that don't have 'Home' and
  1057.     'End' keys.
  1058.  
  1059.  
  1060. Rev: 12/7/92    (version 2.36)
  1061. ------------------------------
  1062. Bug Fix:  Bug found in GIF file output, involving suboptimal hash tables,
  1063.     or something like that.        (Tom Lane  (tom_lane@g.gp.cs.cmu.edu))
  1064.  
  1065. Bug Fix:  If a failure occurred while writing a GIF file, XV would exit with
  1066.     a fatal error.  It'll now just complain, but continue to run.
  1067.             (Spotted by Chris Newman (chrisn+@cmu.edu))
  1068.  
  1069. Added Feature:  Now reads and writes both Grayscale and TrueColor IRIS 'rgb'
  1070.     files.  Can read both normal and rle-encoded images, always writes
  1071.     rle-encoded images.    
  1072.         (Thanks, Paul Haeberli  (paul@manray.asd.sgi.com)
  1073.  
  1074. Change:  Deleteing a file from the control window now no longer loads the
  1075.     next image in the list.  As a result, '-keeparound' (and the 
  1076.     resource) has been removed, no longer having an effect.
  1077.  
  1078. Bug Fix:  '-polled' was occasionally loading a 'blank' image.
  1079.  
  1080. Bug Fix:  saving 'smoothed' or 'dithered' images was saving 'raw' images 
  1081.     instead.
  1082.  
  1083. Bug Fix:  fixed insidious little color freeing problem that would occur
  1084.     whenever XV loaded a 'failed' picture (and hence, brought up the
  1085.     default pic...
  1086.  
  1087. Bug Fix:  Various things were depending on the 'current working directory',
  1088.     which is now a fairly vague concept, what with a load/save window
  1089.     and several schnauzers, all of which can be pointing at different
  1090.     directories...
  1091.  
  1092. Enhancement:  When dragging a selection rectangle in the schnauzer, if you
  1093.     move the cursor far enough above or below the icon window, the window
  1094.     will start scrolling in 'pages' rather than a line at a time.
  1095.  
  1096.  
  1097. Rev: 11/9/92    (version 2.33)
  1098. ------------------------------
  1099. Enhancement:  The Update button in the Schnauzer now calls 'scanDir()' first,
  1100.     and also displays new icons as it generates them.
  1101.  
  1102. Bug Fix:  Smoothing wasn't automatically happening if the image was
  1103.     initially displayed shrunk/expanded (for whatever reason).
  1104.  
  1105. Change:  Let the titles in the Schnauzer get a little longer before '...'ing
  1106.     them.
  1107.  
  1108. Enhancment:  Much improved 'Grab' command handling.  You can now grab windows
  1109.     that have a private colormap, and it also works with windows of
  1110.     varying depths (handy if you have one of those X servers (like an
  1111.     Iris) that is normally in 8-bit pseudocolor mode, but *can* open
  1112.     24-bit windows simultaneously.)
  1113.  
  1114. Bug fix:  '<stdio>' was getting put in the control window's name list, which
  1115.     was sort of pointless, since it can never be reloaded or anything.
  1116.  
  1117. Change:  Now, displays both the filename and the parent directory's name on
  1118.     the image window and icon to help you differentiate between two images
  1119.     with the same name.  (ie, you're comparing the images
  1120.     "/my_archives/gif/naughty.gif" and "/tmp/incoming/naughty.gif".  
  1121.     XV will now display 'gif/naughty.gif' and 'incoming/naughty.gif' in
  1122.     the two window's titlebars.  Assuming, of course, that your WM *does*
  1123.     titlebars...)
  1124.  
  1125. Change:  Put back the 'auto-install' colormap on load behavior when running
  1126.     in '-perfect' or '-owncmap' modes.
  1127.  
  1128. Bug fix:  it was apparently possible to get double-slashes in the control
  1129.     window name list.  Hopefully less so now.
  1130.  
  1131. Bug Fix:  xv now fills in the 'WM_COMMAND' property of the main window,
  1132.     in accordance with the ICCCM.  (Eric Rescorla  (erk@eitech.com))
  1133.  
  1134. Added Feature:  Added '-bperfect' and boolean 'browsePerfect' resource to
  1135.     control whether or not the visual browser should install it's own,
  1136.     private colormap.  By default, it *does*.
  1137.  
  1138. Added Feature:  Added a 'Load All' button to the Load window.  Copies the names
  1139.     of all 'regular' files in the current directory into the control window
  1140.     list, for e-z viewing.
  1141.  
  1142. Added Feature:  Multiple browser windows.
  1143.  
  1144. Added Feature:  Added a cool 'auto-apply while dragging' check button in
  1145.     the color editor.  It can only be turned on while you're in
  1146.     'read/write' color mode, and is by default.  When enabled, image
  1147.     colors are twiddled *while* you operate the various controls in the
  1148.     color editor window, not just after you release the controls.
  1149.  
  1150.     There's a 'dragApply' boolean resource that lets you turn off such
  1151.     behavior (if, for whatever, it's *still* too slow on your machine).
  1152.         (Major League Thanks to Chris Weikart  (weikart@prl.dec.com)
  1153.         
  1154. Enhancement:  In the visual browser, now attempts to load executable files
  1155.     as well, when generating icons.  If the file is a known format that
  1156.     just happens to have it's executable bit turned on, an icon is
  1157.     generated.  Otherwise, the icon is left the default 'application'
  1158.     icon.
  1159.  
  1160. Bug Fix:  Loading '~/whatever' in the Load window was putting a bogus
  1161.     (un-globified) string in the Control window list
  1162.  
  1163. Enhancement:  Whenever you successfully 'save' a file (in the Save window),
  1164.     the written file's name is added to the Control window list, for 
  1165.     e-z reloading...
  1166.  
  1167. Enhancement:  The infamous (to me, at least) 'purple problem' on HP's and
  1168.     some other things has probably been fixed.  I can't test it, so
  1169.     I can't verify this.  If you don't know what the problem was, don't
  1170.     worry, you didn't have it.
  1171.  
  1172. Change:    Added 'version #' string to image window titlebar.
  1173.  
  1174. Enhancement:  Pop-Up warning/confirmation windows are now 'attached' to the
  1175.     correct windows, for the most part.
  1176.  
  1177. Added feature:  Dopey 'warning message' pops up when you switch from 24 to 8
  1178.     and subsequently from 8 to 24.
  1179.  
  1180. Added feature:  When allocating colors in 'stdcmap' modes, it now tries a
  1181.     little harder...
  1182.  
  1183. Added feature:  You can now specify a specific visual to use by using
  1184.     '-visual <vid>' where vid is the hexadecimal visual ID.  You
  1185.     can get visualID's by running 'xdpyinfo'.  (Formerly, you could
  1186.     only specify a class of visual (eg, TrueColor), and XV would pick
  1187.     the 'deepest' one of those available.)
  1188.  
  1189.     Note: If your root window and specified visual have different
  1190.     depths, you will *not* be able to display images in the root
  1191.     window.
  1192.  
  1193. Bug Fix:  'Landscape' postscript had its preview incorrectly generated.
  1194.  
  1195. Bug Fix:  Grayscale compressed postscript wasn't quite correct.
  1196.                 (John P. Nelson  (jpn@genrad.com))
  1197.  
  1198. Bug Fix:  Postscript 'bounding box' comment was incorrect when writing in
  1199.     landscape mode.        (John Amanatides (amana@cs.yorku.ca))
  1200.  
  1201. Added:    '-8' and '-24' options (and boolean 'force8' and 'force24' resources)
  1202.     to force XV to remain in either 8- or 24-bit mode.
  1203.  
  1204. Bug Fix:  Patches two 2-bit X support for NeXT machines.
  1205.         (Werner Randolf  (evol@brian.uni-koblenz.de))
  1206.  
  1207.  
  1208. Rev: 10/8/92   (unreleased version 2.29)
  1209. ----------------------------------------
  1210. Added:  '-dir' (and 'searchDirectory' string resource) to specify a
  1211.     default place to look for files.  When you start XV, it will 'cd' to
  1212.     this directory, so it will be the default directory for the Load,
  1213.     Save, and Visual Browser windows.  Also, you can (on the command line)
  1214.     specify 'simple' names.  It will first look for the file in the 
  1215.     directory that you were in when you started XV, and (if not found
  1216.     there) it will look for the file in the specified search directory.
  1217.  
  1218. Added:  '-hist' and '-norm' options (and boolean 'autoHistEq' and 'autoNorm'
  1219.     resources) to automatically perform Histogram Equalization and
  1220.     Normalization whenever an image is loaded.
  1221.  
  1222. Added:  A '-viewonly' option that disables *ALL* user input, and as a
  1223.     consequence, prevents the user from opening any of the various
  1224.     XV windows.  They'll only see the image window, and they won't
  1225.     be able to do anything with it.  Useful in the case that you
  1226.     may want to use XV in some sort of canned demo (or other 
  1227.     environment in which you don't want people to have access to the
  1228.     file system (the load/save window) and such.)
  1229.  
  1230.     Note that it isn't possible for the user to Quit the program, either,
  1231.     so you'll almost certainly always want to use the '-wait' option to
  1232.     make the program exit after some amount of time.  (Or, alternately,
  1233.     you can just kill the XV process from whatever program started it.)
  1234.                 (idea from Larry W. Virden (lwv26@cas.org))
  1235.         
  1236. Added:    When using XV for format conversion, it can be darned annoying that
  1237.     whenever you load a file, it sets the format/colors controls in
  1238.     the Save window to appropriate values for the loaded image.
  1239.     Likewise, if you're printing images, or piping them to some program,
  1240.     it's annoying that everytime you load an image, the default 'save as'
  1241.     filename gets put back to the loaded image's filename.
  1242.  
  1243.     The fix:  two new buttons in the Save window, 'Prev Set' which
  1244.     restores the format/color settings that were used on the last save
  1245.     operation, and 'Prev Name', which restores the name that was used
  1246.     on the last save operation.
  1247.  
  1248. Change:    IntSize button now shrinks things to integer compressions, as
  1249.     well as integer expansions.  For example, if the current 
  1250.     expansion ratios were .70 x .80, and you hit IntSize, the new
  1251.     ratios would be .50 x 1.00 (as .70 is closer to 1/2 than it is to 1,
  1252.     and .80 is closer to 1).  Likewise, it will shrink things to 1/3,
  1253.     1/4, 1/5, and so on.
  1254.  
  1255. Added '-rotate deg' and 'autoRotate: int' options to automatically rotate
  1256.     images (in 90-degree steps) when they are loaded.  Valid values
  1257.     are 0, +-90, +-180, and +-270.
  1258.  
  1259. Added '-hflip' and '-vflip' (and boolean 'autoHFlip' and 'autoVFlip' 
  1260.     resources) to automatically flip images horizontally and vertically
  1261.     when loaded.
  1262.  
  1263. Change:  Now, when 'large' images (larger than the screen) are loaded, 
  1264.     they are shown at 'MaxPect' size, rather than being halved or
  1265.     quartered.
  1266.  
  1267. Added a new '-crop x y w h' option that lets you automatically crop to some
  1268.     specified rectangle when an image is loaded.  Note that the entire
  1269.     image is still loaded, and available, and you can hit 'UnCrop' to 
  1270.     display the whole image.  Mainly useful to view a small section of
  1271.     the weather maps, or something like that.  Note that there is no 
  1272.     corresponding resource for this option.
  1273.  
  1274. Renamed the old '-crop' option (which automatically did an 'AutoCrop' 
  1275.     operation) to '-acrop'.  The boolean resource 'xv.autoCrop' still
  1276.     specifies whether or not to automatically do an AutoCrop.
  1277.  
  1278. Added a '-raw' option (and 'autoRaw' boolean resource) basically to complete
  1279.     the '-dith' and '-smooth' options.  Can be used to turn off the 
  1280.     default automatic dithering that takes place when you're using 
  1281.     the 'standard colormap'
  1282.     
  1283. Added '-4x3' option (and 'auto4x3' boolean resource) to automatically do a 4x3
  1284.     command on any loaded pictures.
  1285.  
  1286. Added '-preset' option and 'defaultPreset: int' resource that lets you
  1287.     make one of the four presets in the color editor window temporarily
  1288.     be the 'default' preset.  Useful if you set the presets up to 
  1289.     correct the colors for various monitors that you use, or alternately,
  1290.     if you set the presets up to 'do' something useful...
  1291.             (idea from Ricky KeangPo Ho (kpho@sabina.berkeley.edu))
  1292.  
  1293. Bug Fix:  Whenever you load a file, its name gets put into the Control
  1294.     Window's list.  XV now checks to see if the name is already *in*
  1295.     the list, and thus avoids putting duplicate names in the list.
  1296.                 (Rod Summers  (rsummers@ard.fbi.GOV))
  1297.  
  1298. Added stuff to the Display Modes button.  You can now turn on/off these 
  1299.     options, interactively,  while running the program:
  1300.         -perfect, -owncmap, -stdcmap, -rw
  1301.  
  1302.     It's pretty cool, since if you're like me, you just normally run
  1303.     XV in its default mode (read-only color cells, no colormap 
  1304.     installation).  If you suddenly decide you want to extensively
  1305.     putz around in the color editor, you can, on-the-fly, turn on
  1306.     read-write colorcells, which makes things *much* faster.
  1307.  
  1308. Added '-stdcmap' option and 'useStdCmap' resource.  Instead of allocating a 
  1309.     custom set of colors for each image, it will instead allocate a 
  1310.     general set of colors once, and display all subsequent images using
  1311.     these colors.  
  1312.  
  1313.     The images don't look as good as if they used image-specific colors,
  1314.     but it avoids the ugly rainbow effects between images, since all
  1315.     images use the same colors.  Important if you're doing 'animations'
  1316.     using '-wait'.  Also, it speeds things up slightly.
  1317.  
  1318.     Note:  normally when you load images while using the StdCmap, they
  1319.     will be automatically dithered for you, as they look pretty nasty
  1320.     when they aren't dithered.  The exception:  If you're viewing an
  1321.     animation (which is one of the main reasons for the '-stdcmap'
  1322.     option), and you've said '-wait 0' (which means 'display as fast
  1323.     as possible), the auto dithering is turned off, to increase the
  1324.     speed of the animation.  You can still manually turn it on in this
  1325.     case by using the '-dith' option, or just using '-wait 1'.
  1326.  
  1327.     Note:  There are a couple different sizes of 'standard' colormaps.
  1328.     If you're on a TrueColor/DirectColor display, it will use a 3/3/2
  1329.     colormap.  Otherwise, it will try to use a 6*6*6 colormap, a 2/2/2
  1330.     colormap, or a 1/1/1 colormap, based on '-ncols' (or the depth of
  1331.     your display, if it's less than 8 bits).  You can manually force
  1332.     it to use a smaller colormap than it would normally use by setting
  1333.     '-ncols'.  (ncols < 216 will keep it from using the 6*6*6 cmap, and
  1334.     ncols < 64 will keep it from using the 2/2/2 cmap...)
  1335.  
  1336.     Other note:  normally, the use of the -stdcmap option will *not*
  1337.     affect how the image is saved (should you decide to Save an image).
  1338.     You can, however, write out images using the standard cmap by 
  1339.     selecting the 'Reduced Color' option in the Save box.
  1340.  
  1341. Deleted '-nglobal' option and resource.
  1342.  
  1343. Bug fix:  'Maxpect' button in PostScript window wasn't working correctly
  1344.     in landscape mode.  (Jim Belonis  (belonis@dirac.phys.washington.edu))
  1345.  
  1346. Turned off 'ceditColorMap'.  Now, by default, the color editor will be shown
  1347.     in the 'normal' colormap, rather than the image's colormap (when using
  1348.     '-perfect' or '-owncmap).  This can be confusing when using the 
  1349.     colormap editor, as the cells will *not* be shown in their correct
  1350.     colors, but it gets around the problem of not being able to *use*
  1351.     the color editor because it's being displayed in non-contrasting
  1352.     colors.
  1353.  
  1354. Added feature:  Now, when you save a file, it prints the # of bytes written.
  1355.         Useful, if you want to know how well your image was compressed.
  1356.  
  1357. Bug fix:    Wasn't correctly displaying on LSBFirst 16-bit displays
  1358.         (Stardent)   (Arman Rivard (frog!arman@eddie.mit.edu))
  1359.  
  1360. Added some 'useful' default settings for the Color Editor presets (1-4).
  1361.     #1 is a 2-intensity setting.  Image will be shown in black and fully-
  1362.         intense colors.  Sort of makes pictures look like the 
  1363.         credits to 'Saturday Night Live' did at some point in the
  1364.         past.
  1365.     #2 is a 8-color setting.  Image will be shown in black, blue, green,
  1366.         cyan, red, magenta, yellow, and white
  1367.     #3 is a 'temperature' pseudo-color mapping for grayscale images.
  1368.     #4 is a 'geographic map' pseudo-color mapping for grayscale images.
  1369.  
  1370. Added '-bdisable' option (and browseDisable resource).
  1371.  
  1372. Turned off the 'autoClose' behavior, by default.  Iconifying the image window
  1373.     will *not* affect the other windows.  To get the old behavior (where
  1374.     iconfiying the image window iconified everything else), just specify
  1375.     the '-close' option, or set the 'xv.autoClose' resource to 'True'.
  1376.  
  1377. Change:  Changed '-browse' option to '-lbrowse' (and '.browseMode' resource
  1378.     to '.loadBrowse'), so as not to conflict with new 'visual browser
  1379.     related options/resources. ('-bmap' and '-bgeom' options and
  1380.     '.browseMap' and '.browseGeometry' resources)
  1381.  
  1382. Added Feature:  a '-poll' option.  If turned on, XV will (attempt) to 
  1383.     recognize when (if) the currently displayed file changes, and if
  1384.     so, it will reload it.  This should let you easily use XV to monitor
  1385.     ALL SORTS OF THINGS, such as the progress of slow ftp transfers,
  1386.     the weather map (assuming you have the thing installed to 
  1387.     automagically download the things and put the latest one in some
  1388.     standard place, say "current_weather.gif" or whatever...).
  1389.  
  1390.     You could even use XV as a sort of framebuffer, to allow otherwise
  1391.     non-X programs to display graphics.  Just have your program draw on
  1392.     its own internal 'frame buffer' (just a hunk of memory), and 
  1393.     periodically write it out to a file.  (As I've mentioned to
  1394.     anyone who'd let me, "The PBM/PGM/PPM file formats are *trivial* to
  1395.     write.  Any program that manipulates images should be able to
  1396.     write a PBM/PGM/PPM file...").  Anyhow, periodically write stuff
  1397.     to a file, and have XV display the file with the '-poll' option
  1398.     turned on, and voila!, an output-only framebuffer for X workstations.
  1399.  
  1400. Added Feature:  Added an 'oilpaint' function to the 'Algorithms' menu.
  1401.     I got the basic idea from 'pgmoil.c', written by Wilson Bent', who
  1402.     in turn got it from this book called "Beyond Photography", written
  1403.     by some dude named 'Holzmann'.  
  1404.  
  1405. Bug fix:  if your image only had two colors in it, and you wrote it out as
  1406.     a Sun Rasterfile, it would turn out in black and white, regardless
  1407.     of the 'FullColor/Greyscale/B&W Dither' setting.
  1408.  
  1409. Added Feature:    'Algorithms' menu.  Now you can run blurring algorithms,
  1410.     edge detection, 'tinfoil' effect, and such on an image.  Note that
  1411.     these algorithms generate a new 'image', rather than just playing
  1412.     around with the way that the image is displayed.
  1413.  
  1414. Enhancement:  Timer() function should work better on SGI machines.
  1415.             (Fernando D. Mato Mira  (matomira@ligsg13.epfl.ch))
  1416.  
  1417. Added Feature:  '-gamma gval' option and '-cgamma rval gval bval' for 
  1418.     setting gamma values in the Color Editor graphs from the command
  1419.     line.
  1420.  
  1421. Added Feature:  'IntExpnd' button (keyboard equivalent 'I') rounds the 
  1422.     width and height expansion factors to the nearest integer.  
  1423.  
  1424. Bug Fix:  GIF87 files with an aspect ratio in them weren't being parsed 
  1425.     properly.
  1426.  
  1427. Enhancement:  Many cleanups and the Imakefiles for the JPEG and TIFF subdirs
  1428.                 (Jonathan I. Kamens  (jik@pit-manager.mit.edu))
  1429.  
  1430. Enhancement:  Modifications for compiling on ODT 2.0 systems.
  1431.                 (Mike Patnode  (mikep@sco.com))
  1432.  
  1433. Enhancment:  If using '-root -maxpect' you can now use '-rmode' to specify
  1434.     how it will be displayed (though it will still default to the
  1435.     'root, centered' style).
  1436.                 (Ted Grzesik  (tedg@apollo.hp.com))
  1437.  
  1438. Enhancement:  Modifications to get XV to compile on the Interactive Unix System
  1439.                 (Eam Lo  (eam@netcom.com))
  1440.  
  1441. Feature:  Added '-random' command line option.  Mainly used in conjunction
  1442.     with '-wait' to produce 'random' slideshows.  Rather than running
  1443.     through the files in the order that they were specified on the
  1444.     command line, it will order them into a random sequence.  Each file
  1445.     will only be displayed once.  (Unless '-wloop' is also turned on,
  1446.     in which case each file will be displayed once per 'loop'.)
  1447.  
  1448.     If used without '-wait', it will randomly pick one of the specified
  1449.     files to be displayed first.
  1450.                 (Tim Ayers  (ayers@mermaid.micro.umn.edu))
  1451.  
  1452. Bug Fix:  Wasn't properly truncating leading path off of names displayed
  1453.     in control panel (after 'Load'ing a new file).
  1454.                 (Elaine Chen  (eychen@Athena.MIT.EDU))
  1455.  
  1456. Fixed bug in writing compressed PostScript.
  1457.                 (Bill Hess  (hess@tethys.apl.washington.edu))
  1458.  
  1459. Fixed bug that would crash on certain systems when trying to display a root
  1460.     image.            (Eam Lo  (eam@netcom.com))
  1461.  
  1462. Fixed bug that caused XV 2.21 (in 'root' modes) to eventually crash 
  1463.     the OpenWindows    X Server.
  1464.             (thanks to Jeremy Lawrence (jeremy@snrc.uow.edu.au)
  1465.              for his help in tracking the problem down)
  1466.  
  1467. Added BMP (Microsoft Windows 3.x) format, for both reading and writing.
  1468.     Note:  while it reads RLE4 and RLE8 compressed formats, it only
  1469.     writes in the uncompressed format.  Given how few RLE4/RLE8 
  1470.     BMP files I've seen out there (read: 'none'), this shouldn't be a big
  1471.     problem.
  1472.  
  1473. Certain warning messages are now printed to stderr if neither the control or
  1474.     info windows are open.
  1475.  
  1476. RLE file reading was busted.  Wouldn't read colormapped RLE files, nor
  1477.     would it read RLE files that didn't have a background color
  1478.     specified.    (reported by Peter Miller (pmiller@topaz.bmr.gov.au))
  1479.  
  1480. added window classes 'XVps', 'XVjpeg', 'XVtiff', 'XVconfirm'
  1481.     for the postscript, jpeg, tiff, and popup windows, respectively,
  1482.     so Motif users can do things like this:
  1483.  
  1484.     Mwm*XVroot*clientDecoration:            none
  1485.     Mwm*XVcontrols*clientDecoration:        -resizeh
  1486.  
  1487. XV should stop 'homing' windows into the top-left corner of virtual root
  1488.     windows.        (Daren W. Latham  (dwl@mentat.udev.cdc.com))
  1489.  
  1490. Support for 2-bit MSBFirst machines.
  1491.                 (Dale Luck  (dale@ntg.com)
  1492.  
  1493. 1-bit Sun Rasterfiles weren't being written correctly.
  1494.                 (Lars Bo Nielsen  (lbn@hugin.dk))
  1495.  
  1496. Image colors are now preserved 'as long as possible' when in '-perfect' or
  1497.     '-owncmap' modes and changing images, thus minimizing the amount of
  1498.     time the image is shown with the 'rainbow effect' and maximizing the
  1499.     amount of time the image is shown with the correct colors.
  1500.  
  1501. Image was being unnecessarily cleared when in '-perfect' or '-owncmap' modes.
  1502.  
  1503. When saving images in B/W stippled format, *and* the image only has two colors
  1504.     in it, XV no longer does an explicit (and unnecessary) call to the
  1505.     the Floyd-Steinberg ditherizing routine.  Not only will saved images
  1506.     be *exactly* what was on the screen (which wasn't necessarily the
  1507.     case, before), but it also saves a tremendous amount of work if you're
  1508.     huge b/w scanned image, which more and more folks seem to be
  1509.     doing.        (Thanks to Lester Ingber (ingber@umiacs.umd.edu)
  1510.              for complaining about this misfeature)
  1511.  
  1512. Added '-iconic' option, to start program with image window iconified.
  1513.  
  1514. Gratuitous three-d-ification of most of the doo-dads, at least on color 
  1515.     systems.
  1516.  
  1517. Changed mouse button usage in Grab command.  Button1 grabs a window,
  1518.     Button2 grabs an arbitrary rectangle, and Button3 cancels.
  1519.     (To be consistent with 'Button2' dragging a cropping rectangle in
  1520.     the image.)
  1521.  
  1522. Bug fix:  Shifted-arrow keys didn't work in Postscript window on OpenWindows
  1523.     servers.        (Lester Ingber  (ingber@umiacs.umd.edu))
  1524.  
  1525. Bug fix:  Cleaned up some potential memory leaks.
  1526.  
  1527. Bug fix:  "xv -rw -mono" was coming out somewhat more colorful than might be
  1528.     desired.
  1529.  
  1530. The Load/Save window file list now automagically positions itself so that
  1531. the filename is 'centered' in the file list region.
  1532.  
  1533. Also, there's a new icon for executable files (in the Load/Save window)
  1534.  
  1535. Now the 'Zoom In' rectangle is tracked until you release the mouse button.
  1536.  
  1537. Fixed 'Timer()' function to use 'sginap()' on SGI machines.
  1538.                 (James Nugent  (james@ironbark.bcae.oz.au))
  1539.  
  1540. Improved Expose event handling (groups multiple exposes, and requests
  1541.     BackingStore on the ctrl, coledit, and image windows)
  1542.                 (Robert Forsman  (thoth@raybans.cis.ufl.edu))
  1543.  
  1544. YCBCR-encoded TIFF images didn't work
  1545.                 (Bill Barabash  (barabash@rachel.enet.dec.com))
  1546.  
  1547. If you entered a directory name and pressed 'Ok' in the load/save
  1548.     windows, XV would try to treat it as a plain file.
  1549.                 (Bill Barabash  (barabash@rachel.enet.dec.com))
  1550.  
  1551. Postscript 'previews' were generated 'inverted' (white-on-black instead of
  1552.     black-on-white)        (Vivek Khera  (khera@cs.duke.edu))
  1553.  
  1554. Minor memory leak in ColorDither()
  1555.  
  1556. Configuration fix for 386's running SVR4
  1557.                 (Andy Michael  (eesrajm@brunel.ac.uk))
  1558.  
  1559. Bug Fix:  If you opened the ColEdit Window, clicked on 'Norm', then
  1560.     clicked on 'Gam' in the Intensity graph, you'd get a nice random
  1561.     string of uninitialized data...
  1562.                 (Michael Pall  (pall@rz.uni-karlsruhe.de))
  1563.  
  1564. It'll now pop up a nice, friendly "Can't CD to that directory" dialog box 
  1565.     if you try to cd to a directory that you don't have proper permissions
  1566.     to read.        (idea:  Peder Langlo  (respl@mi.uib.no))
  1567.  
  1568. The selection and position of the directory list (in the Load/Save window) is
  1569.     now remembered, instead of being cleared each time you open the
  1570.     window.            (idea:  Peder Langlo  (respl@mi.uib.no))
  1571.  
  1572. You can now switch color editor 'presets' by typing Meta-1, Meta-2, Meta-3,
  1573.     or Meta-4 in any XV window.  Handy if you have a couple of 'standard
  1574.     modifications', and you don't want to bring up the big ol' 
  1575.     color editor window just to click a single button.  Also, just to be
  1576.     convenient, you can also press Meta-R (or Meta-0) to Reset the 
  1577.     color editor.
  1578.                 (idea:  Phil Richards  (pgr@prg.oxford.ac.uk))
  1579.  
  1580. Tweaks to xv.h to make it compile without modification on an HP running
  1581.     HPUX 8.*, in theory anyhow.
  1582.                 (thanks:  Tony Clark (tclark@hptc.mentorg.com))
  1583.  
  1584.  
  1585. Rev: 4/28/92    (version 2.21)
  1586. ------------------------------
  1587. Since XDestroyImage() seems to fail to destroy the actual image data on
  1588.     some systems, I've replaced all calls to XDestroyImage() with
  1589.     xvDestroyImage(), which explicitly kills both the image data and
  1590.     the image structure.
  1591.  
  1592. Added '-close' option (and 'autoClose' boolean resource) to toggle the
  1593.     "automatically close all windows when you iconify the image window"
  1594.     behavior.  By default, this behavior is turned *on*.
  1595.  
  1596. You can now specify just a width *or* a height in the '-geometry' spec.
  1597.     The other dimension will be calculated to preserve the aspect ratio.
  1598.  
  1599. Makefile.std was *not* up to date.
  1600.  
  1601. Various prototype fixes, Imakefile changed, etc.
  1602.                 (David Brooks  (dbrooks@osf.org))
  1603.  
  1604. Conflict with constant 'BITS' (defined in xvgifwr.c) on some systems.
  1605.             (Bernd Mohr (mohr@immd7.informatik.uni-erlangen.de))
  1606.  
  1607. 'xwd.c' seems to have snuck into the 2.20 distribution.  It has been excised.
  1608.  
  1609. The '-expand' option didn't work with negative numbers, as it should.  Also,
  1610.     '-e' didn't work, even though there are no other '-e*' options.
  1611.                 (Marcel Wijkstra  (wijkstra@fwi.uva.nl))
  1612.  
  1613. Minor AIX tweakage
  1614.  
  1615. Some calls to rd_str() should have been rd_str_cl(), and other minor probs.
  1616.                 (Andreas Stolcke  (stolcke@icsi.berkeley.edu))
  1617.  
  1618.  
  1619. Rev: 4/24/92    (version 2.20)
  1620. -----------------------------
  1621. Enhancement:  In the color editor, you can now 'Set' the 'Reset' button,
  1622.     as well as presets 1-4.  This is useful if you've like to temporarily
  1623.     set your 'default' settings for the remainder of the current XV
  1624.     session, without having to play around with 'xrdb'.  For example,
  1625.     you might temporarily be using XV on a monitor with different 
  1626.     color characteristics than the one you normally use.  You could 
  1627.     deal with this problem by playing with the r,g,b graphs, and then,
  1628.     once the image looks 'right' again, setting the 'Reset' button, so
  1629.     that all subsequent images will have this same modification applied 
  1630.     to them.
  1631.  
  1632. Enhancement:  The '-wait' option works better.  It now waits until the
  1633.     image has been fully drawn before starting the timer.  Now, you're
  1634.     guaranteed that your images will be up at least as long as you
  1635.     specify with the '-wait' option (plus whatever time it takes to
  1636.     load and prepare the next image for display).
  1637.  
  1638.     Also, you can now specify '-wait 0' to mean 'as fast as possible'.
  1639.     Handy if you're doing the weather map trick described below.
  1640.  
  1641. Enhancement:  The '-visual' option seems to actually *work* now.  It only
  1642.     'theoretically' worked before (read: "didn't work at all"), as my 
  1643.     X server only supports one visual, making testing impossible.
  1644.     Since then I've gotten my hands on a DecStation, which has an X 
  1645.     server that supports several different 8-bit visuals.  It should
  1646.     work with visuals of different depths, as well, but it might
  1647.     not.
  1648.  
  1649. Enhancement:  All places in the code that were hard-coded to use the directory
  1650.     "/tmp" (when creating temp files) now use the value of the environment
  1651.     variable TMPDIR, if defined, and "/tmp" if not.
  1652.  
  1653. Added Feature: '-loadclear' command-line option (and 'clearOnLoad' boolean
  1654.     resource) lets you turn on the clearing of the image window
  1655.     (or root window) done whenever you load an image on a PseudoColor
  1656.     (or Grayscale) display.  This clearing USED to be done by default, 
  1657.     to hide    the temporary 'rainbow' effect caused when colormap 
  1658.     entries are freed and reallocated.  This is no longer the case.
  1659.     I've decided that I find the effect vaguely entertaining (something
  1660.     to look at while waiting for the next image to load), and more 
  1661.     importantly, if you have a series of images that use the same 
  1662.     colors, you can now use    XV to animate them (albeit no faster than 
  1663.     a frame every 1-2 seconds).
  1664.  
  1665.     Ferinstance, get the satallite radar images from vmd.cso.uiuc.edu,
  1666.     (in the directory 'phil.515'), and run 'xv -wait 0 -wloop SA*'.
  1667.     Just like the evening news!
  1668.  
  1669. Added Feature: There's now a 'compressed' checkbox in the Postscript window.
  1670.     When enabled, XV will generate RLE-compressed Postscript files.  Also,
  1671.     the images will be written as 8-bit data with a colormap.  The
  1672.     practical upshot is that color PS files can now be *much* smaller.
  1673.     (Resource name: 'pscompress', type: boolean)
  1674.  
  1675.     One note:  Compressed images may take considerably longer to print
  1676.     than uncompressed images.  As an example, the default XV pic took
  1677.     (on a LaserWriter II NTX):
  1678.         Color, Compressed:    (87k)    4:00  (4 minutes, not hours!)
  1679.         Color, Uncompressed:    (391k)    2:30
  1680.         Gray,  Compressed:    (85k)    1:40
  1681.         Gray,  Uncompressed:    (130k)     :20
  1682.  
  1683.     The lesson is: unless you're printing to a color printer, you're
  1684.     probably best off sending uncompressed grayscale Postscript.
  1685.  
  1686. Added Feature: whizzo new 'Grab' command.  Lets you grab any
  1687.     rectangular section of the screen into XV.  To use, click on
  1688.     the Grab button (or type ctrl-G).  The display will beep, and
  1689.     the cursor will change.  Press the LEFT mouse button and draw
  1690.     a rectangle, or press the RIGHT mouse button to abort the
  1691.     grab.  The grabbed portion of screen will be automatically
  1692.     loaded into XV for manipulation.
  1693.  
  1694.     Alternately, you can click the MIDDLE mouse button on a window.
  1695.     The window (and its frame) will be snarfed into XV.
  1696.  
  1697.     Used in conjunction with XV's extensive color manipulation thingys,
  1698.     you can now figure out the 'perfect' colors for your xterms, icons,
  1699.     xclocks, or any other thing you can get up on your X display.  Finally,
  1700.     a replacement for the program 'pikapix' from the ol' X10 days!
  1701.  
  1702.     For what it's worth, the Grab command doesn't work on Mac's
  1703.     running MacX in a 'rootless' mode, for semi-obvious reasons.
  1704.         (idea from: Arvind Sabharwal (arvind@brutus.ct.gmr.com))
  1705.  
  1706. Added Feature:  XV can now read RLE files (Utah Raster Toolkit format).
  1707.  
  1708. Added Feature:  'HistEQ' button in Color Editor window.  Performs 
  1709.     intensity histogram equalization on the CURRENTLY VIEWED
  1710.     PORTION OF THE IMAGE.  Occurs between the colormap editor and the 
  1711.     HSV modifier (in terms of the color editor data flow).  This
  1712.     command has the general effect of balancing the overall contrast
  1713.     of the image (increasing contrast on washed-out images, and 
  1714.     decreasing the contrast    on overly-sharp images, so to speak...)  
  1715.     It works best on grayscale images.  
  1716.  
  1717.     The keyboard equivalent is 'H' (capital 'h').
  1718.  
  1719. Change:    The 'MaxCn' (maximum contrast) button has been changed to a 
  1720.     'Norm' (normalize) button.  It expands the intensity range of
  1721.     an image so that the darkest pixels will be have an intensity
  1722.     of '0' and the brightest pixels will have an intensity of '255'.
  1723.     
  1724.     This is *almost*, but not quite, what it used to do.
  1725.     The keyboard equivalent is now 'N' (capital 'n').
  1726.  
  1727. Added Feature: You can now Load files from a pipe by having the first 
  1728.     character in the Load box filename thingy be a '!' (or a '|').
  1729.     For example, you can Load "! bggen -s 400 -w 400 0 0 255".  
  1730.     XV will run the    specified command, saving its standard output to 
  1731.     a file, and then load this file.  (The stdout produced must still 
  1732.     be in one of the recognized image formats.)  You could use this get 
  1733.     an image from a    video digitizer or scanner, assuming you have the 
  1734.     appropriate filter program written.
  1735.  
  1736.     You can pipe multiple commands together, as well.  For example, 
  1737.     you can Load "! xwd | xwdtopnm" to take a snapshot of a window
  1738.     and display it, though given the new Grab command, this isn't
  1739.     such a great example...
  1740.             (idea:  Marty Leisner  (leisner@eso.mc.xerox.com))
  1741.  
  1742. Change:    The 'Save to pipe' feature is now specified by starting the 
  1743.     filename with *either* a '!' or a '|' character, to 
  1744.     be consistent with the 'Load from pipe' command.
  1745.  
  1746.  
  1747. Added Feature: exciting new 'zoom' and 'unzoom' commands!  To use
  1748.     them, hold down the 'control' key, and move the mouse into the
  1749.     image window.  A Left click will zoom in by a factor of two,
  1750.     centered on the mouse position.  A right click will zoom out
  1751.     by a factor of two (if possible), centered around the
  1752.     currently displayed subimage.  These commands can easily
  1753.     replace the Crop/UnCrop commands for casual users.
  1754.             (idea from: Dan Zehme  (dan@mordor.webo.dg.com))
  1755.  
  1756. Added Feature:  'include preview' check box added to postscript dialog
  1757.     box.  Let's you write ps files without the preview, to save
  1758.     some space.  (resource name: 'pspreview', type boolean)
  1759.     
  1760. Added Feature:  all xv windows are closed if you iconify the image window
  1761.     (or the controls window if you're in a 'root' display mode).
  1762.     All closed windows will be reopened when you deiconify the image
  1763.     window (or controls window).  One misfeature:  only the 'main'
  1764.     xv windows (image, controls, info and color editor) will retain their
  1765.     screen position.  The various 'pop-up' windows will not.  To be
  1766.     dealt with at a later time.
  1767.  
  1768. Enhancement: Support for 4" x 5" and 35mm postscript film recorders added
  1769.  
  1770. Enhancement: Increased size of control window to make room for 
  1771.     '24-bit conversion' menu button.  List now displays 11 names
  1772.     instead of 9.
  1773.  
  1774. Enhancement: Hooked in the new version (3.0) of the TIFF library.
  1775.  
  1776. Bug fix:  more bug fixes to the 'slow' 24-to-8 algorithm
  1777.  
  1778. Bug fix:  if loading a truncated interlaced GIF file (not that I recommend it),
  1779.     XV will no longer clear from the 'current line' to the bottom of the
  1780.     image, which would overwrite valid image data
  1781.                 (Dean Elhard  (elhard@system-m.za05.bull.com))
  1782.  
  1783. Bug fix:  memory leak in the '-slow24' code discovered and fixed.
  1784.                 (Dean Elhard  (elhard@system-m.za05.bull.com))
  1785.  
  1786.  
  1787.  
  1788. Rev: 3/17/92    (version 2.12)
  1789. -----------------------------
  1790. Added Feature: 'save at normal size' checkbox in save window.  When
  1791.     turned on, images will be saved at their normal, unexpanded
  1792.     (and *unshrunk*) size, subject to the current cropping and
  1793.     rotation.  Note: The Dither and Smooth commands operate on
  1794.     expanded images.  (In fact running Smooth on a 1:1 image
  1795.     should have no effect.)  AS SUCH, images saved at 'normal size' 
  1796.     will be saved 'Raw'.  (Resource name: saveNormal  type: boolean)
  1797.  
  1798. Added Feature:  You can now change 24-to-8-bit algorithms 
  1799.     (ie, quick24, slow24, best24) while running the program 
  1800.     (via a pop-up menu button).
  1801.  
  1802. Added Feature: '-nolimits' option (and 'nolimits' resource).  If set, there 
  1803.     are no limits on the size of the image (beyond the X-imposed 64K 
  1804.     by 64K).  WARNING:  Be *very* careful when using this option and 
  1805.     playing    with cropping, as it's dangerously easy to accidentally 
  1806.     generate a HUGE image, and crash XV, the host machine, your X server, 
  1807.     or all three.  USE AT YOUR OWN RISK!
  1808.                 (Tero Kivinen  (kivinen@joker.cs.hut.fi))
  1809.  
  1810. Enhancement: X images (on 8-bit displays) are now generated so that
  1811.     scanlines are a multiple of 32 bits long.  This should avoid 
  1812.     problems with certain broken X libraries and/or servers that 
  1813.     weren't doing the image format translation correctly.
  1814.                  (Jeff Coffler  (coffler@jeck.amherst.nh.us))
  1815.  
  1816. Enhancement: Changed scrollbar behavior: Now, when you drag the
  1817.     indicator, the list that the scrollbar controls is updated
  1818.     while you drag.
  1819.  
  1820. Enhancement: when choosing a new directory (in the save menu), xv now remembers
  1821.     the 'suggested' filename to save under, instead of clearing the 
  1822.     text entry doodad.
  1823.  
  1824. Enhancement: Upped maximum number of files in control window list (and
  1825.     therefore, on the command line) to 4096 (from 1024).
  1826.  
  1827. Enhancement: Hooked in the new version (3.0) of the JPEG libraries.  Most
  1828.     relevant change: when loading JPEG files ONLY, the 'quick' and
  1829.     'slow' 24-to-8    algorithms are now performed by the JPEG
  1830.     software.  They seem to be every bit as good or better than
  1831.     the XV algorithms.  The 'best' algorithm still falls through
  1832.     to using the ppmquant-based algorithm in XV.
  1833.                 (Tom Lane     (Tom.Lane@g.gp.cs.cmu.edu))
  1834.                 
  1835.  
  1836. Change:    by default, the 'keepAround' flag is now set to 'true'.
  1837.     Now, xv will hang around if you delete the last file in the
  1838.     controls list.  (-keeparound toggles this flag on and off, and
  1839.     the keepAround resource still behaves the same way.)
  1840.  
  1841.  
  1842. Bug fix:  Compound resources (eg 'xv.preset1.satval') weren't getting properly
  1843.     set on certain systems.
  1844.                 (Dean Elhard  (elhard@system-m.za05.bull.com))
  1845.                 
  1846. Bug fix: XV will now (potentially) run 'better' under DXWM.
  1847.  
  1848. Bug fix: 'Reduced Color' images weren't saving as such in either the
  1849.     PPM or TIFF formats.  (They won't in JPEG, either, but trust
  1850.     me, you don't want to save reduced color images in the JPEG
  1851.     format...)
  1852.  
  1853. Bug Fix:  numerical inaccuracies in HSV modification part of color
  1854.     editor were causing certain colors to be lost  (eg, an input of
  1855.     (254,254,254) was coming out (253,253,253), even when everything 
  1856.     was set up to do a 1:1 mapping.)
  1857.  
  1858. Bug Fix:  minor memory leak in KillOldRootInfo() fixed.
  1859.  
  1860.  
  1861.  
  1862. Rev: 3/4/92    (version 2.11)
  1863. -----------------------------
  1864. Problems with Imakefile fixed.        (David Brooks  (dbrooks@osf.org))
  1865.  
  1866. Problems with SetISTR() function declaration fixed.
  1867.                     (David Brooks  (dbrooks@osf.org))
  1868.  
  1869. Compiler noise shut up        (Phil Karlton  (karlton@fudge.asd.sgi.com))
  1870.  
  1871.  
  1872. Rev: 2/26/92   (version 2.10)
  1873. -----------------------------
  1874. Generate updated documentation, this time on a Mac running System 7.  The
  1875.     generated postscript *may* be cleaner.  I hope...
  1876.  
  1877. Incorporated Anthony Datri's PDS/VICAR file reading code
  1878.  
  1879. Added '-rv' option (and 'reverse' resource).  Displays 'negative' images
  1880.     (white becomes black, black becomes white, and colors do 
  1881.     interesting things).  
  1882.  
  1883. Bug fix:  shifted arrow keys (for adjusting cropping rectangle size) didn't
  1884.     work on Sparcstations running OpenWindows.
  1885.  
  1886.  
  1887.  
  1888. Rev: 2/22/92   (version 2.06)
  1889. -----------------------------
  1890. Added whizzo new colormap editing feature.  Click on a color cell with the 
  1891.     left mouse button.  Now click on another color cell with the middle
  1892.     mouse button.  All colorcells in between these two colorcells will
  1893.     be interpolated between these two colors.
  1894.  
  1895.     For example, view the 'default' image by just running 'xv' without
  1896.     any options.  Open the color editor window, left-click on the first
  1897.     colorcell, and turn it 'red'.  Left-click on the 64th colorcell
  1898.     (the rightmost cell on the last complete line of the colorcell grid),
  1899.     and turn this colorcell yellow.  Now, middle click on the first
  1900.     colorcell.  Voila!  Niftily interpolated reddish yellows.  Neato!
  1901.  
  1902. Added 'reload on signal' feature.  If you send the XV process a 'QUIT' signal
  1903.     ('kill -QUIT <pid>', or 'kill -3 <pid>' on most systems), the program
  1904.     will reload the currently selected file.  (The one that is currently
  1905.     highlighted in the xv controls window filename list.)  This behavior
  1906.     is exactly the same as hitting '<return>' in the xv controls window.
  1907.     If XV is currently in a state where hitting '<return>' in the 
  1908.     controls window won't load an image (ie, some pop-up dialog box is
  1909.     grabbing all such events), then sending this signal won't work either.
  1910.  
  1911.     Note:  it also won't work if the current file was read from <stdin>
  1912.  
  1913. Changed way 'uncrop' works to limit 'drifting' of windows when cropping and
  1914.     uncropping.  Also, puts window back where it belongs when you load
  1915.     a new image.
  1916.  
  1917. When cropping, Raw/Dithered/Smooth status of image will remain the same.
  1918.     When uncropping, however, it will revert to 'raw', given how long
  1919.     the dither/smooth operations can take on a potentially large image.
  1920.  
  1921. Now tracks x,y coordinates of handles in the 'graph' windows of the color
  1922.     editor window, for precise placement.  Also, you can now move a
  1923.     handle through all 256 x and y positions, not just the 'even' values.
  1924.  
  1925. Bug fix to 24-to-8 code.  (Would crash on a 1-bit display.)
  1926.  
  1927.  
  1928.  
  1929.  
  1930. Rev: 2/13/92   (version 2.04)
  1931. -----------------------------
  1932. tracked pixel values strings are now put in the 'cut buffer' with a trailing 
  1933.     '\n' character
  1934.  
  1935. '-black' and '-white' options now affect how all 1-bit b/w images are 
  1936.     displayed, no longer just used in conjunction with '-ncols 0'
  1937.  
  1938. Added command line options '-quick24', '-slow24', and '-best24' to select
  1939.     different 24-to-8 conversion algorithms.  'slow24' is the default.
  1940.     (Also, 'quick24' and 'best24' boolean resources)
  1941.  
  1942. Added the 'ppmquant' 24-to-8 bit algorithm ('-best24' option).  Note that 
  1943.     this algorithm is *much* slower than the so-called '-slow24' algorithm.
  1944.     The major difference is that this algorithm will produce good-looking
  1945.     undithered images, whereas the 'slow24' algorithm dithers.
  1946.  
  1947. Fixed various bugs in the '-slow24' 24-to-8 bit algorithm.
  1948.  
  1949. Added '-cecmap' option (and 'ceditColorMap' resource) to specify whether or 
  1950.     not to install the image's colormap in the color editor window
  1951.  
  1952. TIFF i/o routines added        (Sam Leffler  (sam@sgi.com))
  1953.  
  1954. Added a 'browse' button in the Load window.  Lets you change the 'browse mode'
  1955.     interactively, while the program is running.  (See '-browse' option
  1956.     below.)
  1957.  
  1958. Added 'autoApply', 'displayMods' and 'autoReset' resources to control initial
  1959.     settings of respective checkboxes in the color editor window.
  1960.  
  1961. Program is less likely to gratuitously clear the image/root window if you are
  1962.     on a non-PseudoColor/GrayScale display
  1963.  
  1964. increased size of 'OutCode[]' array in gif reader.
  1965.                 (Rolf Mayer  (rz90@rz.uni-karlsruhe.de))
  1966.  
  1967. load/save window used to crash if you had a directory with 'too many' files
  1968.                 (Craig McGregor (CRAIG@csdvax.csd.unsw.EDU.AU))
  1969.  
  1970.  
  1971. Rev: 1/24/92  (version 2.01)
  1972. -----------------------------
  1973. Added '-crop' option (and 'autoCrop' resource) to do the 'autocrop' command
  1974.     automatically whenever an image is loaded.
  1975.  
  1976. Added '-browse' option (and browseMode resource).  Keeps the Load window
  1977.     from being closed after succesfully loading a file.  
  1978.  
  1979. Added '-nostat' option (and 'nostat' resource) to speed up Load/Save
  1980.     windows.  Prevents the program from doing 'stat()' calls when you
  1981.     change directories.  (Useful for systems with a lot of remote
  1982.     files, where doing the stat() calls takes 'too long')
  1983.     Downside:  it won't be able to mark directories with a 'folder'
  1984.     icon, as it won't *know* that they're directories.
  1985.  
  1986. added '-noresetroot' option (and 'resetroot' resource).  Let you turn off
  1987.     the 'clear the root when switching from a root mode back to 
  1988.     window mode in the display modes menu' behavior.  Useful for checking
  1989.     your cropping, if you're working on a 'mirrored' root background
  1990.     (or something)        (David Elliot  (dce@smsc.sony.com))
  1991.  
  1992. added a 'rescan' button in the Load and Save windows.  Rescans the current
  1993.     directory.
  1994.  
  1995. fixed up GIF89 parsing somewhat.
  1996.  
  1997. fixed bugs in xvAllocColor() that would show up if running XV on a TrueColor
  1998.     display.
  1999.  
  2000. PostScript files written in B/W Stipple weren't correct
  2001.             (Peter Glassenbury  (pete@cosc.canterbury.ac.nz))
  2002.  
  2003. SortColormap() function in xvcolor.c sped up 
  2004.             (Dave Jones  (jonesd@kcgl1.eng.ohio-state.edu))
  2005.  
  2006. fixed problem with 'cropping rectangle' not being drawn correctly.
  2007.  
  2008. Loads current directory only when opening the Load/Save windows, not 
  2009.     when the program starts up.  This is to improve startup time.
  2010.  
  2011. Reloads current directory when you do a 'Delete file' command, just in
  2012.     case you deleted a file in the current directory.
  2013.  
  2014. 'hints' handling improved.  When controls/info/coledit windows are closed
  2015.     and reopened, they reappear where they *were*, not where the 
  2016.     original geometry spec put them.
  2017.  
  2018. FREAD and FWRITE macros in jinclude.h renamed, to avoid conflicts.
  2019.  
  2020. problems with 'XLookupString()' on VMS and AIX fixed
  2021.                 (Dave Jones  (jonesd@kcgl1.eng.ohio-state.edu))
  2022.  
  2023. patches for Sequent machines    (Scott Erickson (sources@sherlock.ics.uci.edu))
  2024.  
  2025. Added 'fsQuick' code.  Dithers (on 1-bit displays) 2 to 3 times faster
  2026.     than the old code.  Looks about as good.
  2027.                 (David B. Rosen  (rosen@cns.bu.edu))
  2028.  
  2029. code for 2-bit displays (so to speak :-) added
  2030.                 (Marc Kossa  (M.Kossa@frec.bull.fr))
  2031.  
  2032. bug in parsing '-dither'/'-display' fixed
  2033.                 (Nigel Pearson  (nigel@socs.uts.edu.au))
  2034.  
  2035. Fixed crash if you hit 'return' while xv was running with no file names.
  2036.  
  2037. fixed potential memory leak on systems where XDestroyImage() doesn't
  2038.     free the image data, only the structure.
  2039.  
  2040. fixed '-fixed' option
  2041.  
  2042. fixed bogus Macintosh prolog file in PS documentation.
  2043.  
  2044. 8-bit characters in PS documentation turned into properly-escaped
  2045.     7-bit characters.    (Reg Clemens  (clemens@plk.af.mil))
  2046.  
  2047. minor mods for RS6000        (Tom McConnel  (tmcconne@sedona.intel.com))
  2048.  
  2049. new (still unsupported) version of VICAR/PDS file handler added to 
  2050.     unsupt/ directory    (Anthony Datri  (datri@concave.convex.com)
  2051.  
  2052. fixed segmentation fault in openPic()    (Jimmy Aitken  (jimmy@pyra.co.uk))
  2053.  
  2054. fixes for Pyramid BSD machines        (Jimmy Aitken  (jimmy@pyra.co.uk))
  2055.  
  2056. fixed 'tolower' bug in lower_str function (Rich Thomson (rthomson@dsd.es.com))
  2057.  
  2058. patches for AUX systems
  2059.  
  2060. some ANSI C complaints quieted            (Jamie Zawinski (jwz@lucid.com))
  2061.  
  2062. fixed WM_DELETE property problems      (Jamie Zawinski (jwz@lucid.com))
  2063.  
  2064. Changed occurrences of string 'basename' to 'basefname' to avoid conflict on
  2065.     certain systems, and fixed a bug in rd_int()
  2066.                     (David Elliot  (dce@smsc.sony.com))
  2067.  
  2068. fixed bug that could cause window to move bizarrely on a 'Max Size' command
  2069.  
  2070. make 'clean' dependancy added to Imakefile  
  2071.             (Rainer Klute (klute@irb.informatik.uni-dortmund.de))
  2072.  
  2073.  
  2074.  
  2075.  
  2076. Rev: 1/2/92  (version 2.00)
  2077. -----------------------------
  2078. *** SUN Rasterfile support         (Dave Heath  (heath@cs.jhu.edu))
  2079.  
  2080. fixed unclosed comment in xv.h       (Paul Close (pdc@sgi.com))
  2081.  
  2082. fixed infinite loop in Imakefile   (Kjetil Jorgensen  (jorgens@lise.unit.no)
  2083.  
  2084. fixed problems in Imakefile (bitmaps.h wasn't being rebuilt)
  2085.                 (Jonathan Kamens  (jik@pit-manager.mit.edu))
  2086.  
  2087. additional bug fixes/workarounds for 24/32-bit TrueColor displays
  2088.                 (Dave Gregorich (dtg@csula-ps.calstatela.edu))
  2089.  
  2090. include string.h or strings.h based on 'SYSV' flag
  2091.                 (Kevin Brown  (brown@hpbsm15.boi.hp.com))
  2092.  
  2093. bogus command line parsing ('-autogamma' wouldn't work)
  2094.                 (Doug Washburn  (washburn@hpmpea2.cup.hp.com))
  2095.  
  2096. fixed 4-bit X code to work on MSBFirst machines
  2097.                 (Stefan Esser  (se@ikp.Uni-Koeln.DE))
  2098.  
  2099. mods for HPUX 7.0        (Jan D.  (jhd@irfu.se))
  2100.  
  2101. added window classes 'XVroot', 'XVcontrols', 'XVdir', 'XVinfo', and 'XVcedit',
  2102.     so Motif users can do things like this:
  2103.  
  2104.     Mwm*XVroot*clientDecoration:            none
  2105.     Mwm*XVcontrols*clientDecoration:        -resizeh
  2106.     Mwm*XVdir*clientDecoration:            -resizeh -maximize
  2107.     Mwm*XVcedit*clientDecoration:           -resizeh -maximize
  2108.     Mwm*XVinfo*clientDecoration:            -resizeh -maximize
  2109.  
  2110.     Also, WM_DELETE_WINDOW is now set up in the WM_PROTOCOLS 
  2111.     property, allowing the 'close' menu selection under MWM to
  2112.     close an XV window without terminating the application.
  2113.                 (Jan D.  (jhd@irfu.se))
  2114.  
  2115. slow 24-to-8 conversion was moving the image down 1 scan-line
  2116.                 (Satoshi Asami  (asami@is.s.u-tokyo.ac.jp))
  2117.  
  2118. mods for MIPS machines      (David Boulware  (dgb@landau.phys.washington.edu))
  2119.  
  2120. Ability to LOAD pictures that weren't specified on the command line
  2121.  
  2122. fixed bug in CheckForConfig()
  2123.  
  2124. twm workaround from patchlevel 2 now only turned on if '-twmkludge' option is
  2125.     specified.  Was causing problems on OpenLook 2.0 systems
  2126.  
  2127. directories and symbolic links are now sorted together at the top of
  2128.     the 'xv directory' list
  2129.  
  2130. fixed crashes when 'AutoCropping' in conjunction with '-root' option
  2131.  
  2132. file format/color buttons in Directory window are now set whenever an image
  2133.     is loaded.  (Set to the format/color of the loaded image.)
  2134.  
  2135. clicking anywhere inside the Info box will now close it
  2136.  
  2137. added support for up/down arrows, page up/down, home, and end keys when
  2138.     mouse is in control window or directory window (for operating
  2139.     the scrollable list thingy)
  2140.  
  2141. changed 'Return' key binding to mean 'display currently selected picture'
  2142.     rather than 'Next'
  2143.  
  2144. added binding of Tab key to 'Next' function
  2145.  
  2146. '-wait' now waits until picture is fully up on screen before starting timer
  2147.  
  2148. '-wloop' option added.  Causes '-wait' slideshow to loop at end
  2149.  
  2150. added 'hagan-style' tiling on the root window.  '-root', '-center', and
  2151.     '-rpat 0'  (the default) will now draw an image centered on the
  2152.     root window, with images going off the screen in all 4 directions
  2153.  
  2154.     (Unlike 'normal' ('-root' only) tiling, which has one image
  2155.     pinned in the top-left corner of the screen, and subsequent
  2156.     images going off the screen ONLY on the bottom and right sides)
  2157.  
  2158. added '-maxpect' option.  (An abbreviation for '-center -fixed -max')
  2159.     makes the image as large as possible, without changing the
  2160.     aspect ratio.  Only relevant when used in conjunction with 
  2161.     '-root'.  (When not using '-root', both '-max' and '-maxpect' do
  2162.     the same thing (as large as possible without changing the aspect).
  2163.     When USING '-root', '-max' makes the image the size of the screen,
  2164.     in all likelyhood changing the aspect ratio)
  2165.  
  2166. added '-olwm' option (and xv.olwm resource) for people using Sun's OpenLook
  2167.     window manager.  Makes the window behave correctly when resized via
  2168.     any of the xv resizing commands.
  2169.  
  2170. added new, slicker-looking icon.  The old one was outside Motif's accepted
  2171.     range of icon sizes.
  2172.  
  2173. SMOOTHING controls (Smooth, Dither, and Raw buttons) added
  2174.  
  2175. added '-cursor' option (and xv.cursor resource).  Allows you to pick a 
  2176.     different cursor for the image window (instead of the 
  2177.     default crosshair cursor)
  2178.  
  2179. various modifications to work somewhat better with tvtwm (or other
  2180.     virtual window managers)
  2181.         Hitoshi Saji    saji@is.s.u-tokyo.ac.jp
  2182.         Tetsuya Ikeda    tetsuya@is.s.u-tokyo.ac.jp
  2183.         Satoshi Asami    asami@is.s.u-tokyo.ac.jp
  2184.  
  2185. fixed up some multiple-redraw bugs, for improved speed
  2186.  
  2187. Added spiffy 'hue' and 'saturation' dials to cedit box
  2188.  
  2189. New format for '-GAMMA' command line option and gamma resources.  Fully
  2190.     specifies state of gamma controls, including 'lines/spline' and
  2191.     'rgb/hsv' modes
  2192.  
  2193. Improved 'undo' handling in Gamma box.
  2194.  
  2195. Added 'reduced' color save.  Used in conjunction with the '-nc' command
  2196.     line option.  Saves the image more-or-less 'as shown', rather than
  2197.     "as it's supposed to be".  For example, you can now save bizarrely
  2198.     stippled pictures by doing something like '-nc 0 -wh red -bl blue'
  2199.     on the command line, and then saving the image in 'reduced color'.
  2200.  
  2201.  
  2202. added '-adither', '-asmooth' options (and 'xv.autoDither', 'xv.autoSmooth'
  2203.     resources) to automatically dither or smooth the image upon 
  2204.     loading it.  Mainly for use the case where you want XV to 
  2205.     load an image onto the root window and go away without any user
  2206.     intervention.  (Like you might put in a startup script.)
  2207.  
  2208. added some X error handling so that XV doesn't blow up (ungraciously) when
  2209.     you're using '-root' on an X terminal that doesn't have enough
  2210.     memory to do a full-screen root image
  2211.  
  2212. code reorganization:  xv.c and xvmisc.c have been split into (xv.c, xvevent.c,
  2213.     xvroot.c) and (xvmisc.c, xvimage.c, xvcolor.c, xvsmooth.c) 
  2214.     respectively.  The files were getting annoyingly large.
  2215.  
  2216. added colormap editing capabilities to the gamma box
  2217.     Colors can be edited in either HSV mode or RGB mode
  2218.     You are modifying the original colormap of the image, BEFORE
  2219.         the '-mono' or '-rv' options are applied, BEFORE
  2220.         any GAMMA correction is applied, and before it's
  2221.         determined how to get the image on the screen.
  2222.         As a result, it's best to edit colors when the GAMMA
  2223.         controls are set to 'Linear'
  2224.     You can select the color to be edited by clicking in the colormap
  2225.         area of the GAMMA box, or by clicking in the image window
  2226.         (in which case the color selected will match the last pixel
  2227.         value you displayed)
  2228.     Using '-rw' mode will generally speed things up, but isn't
  2229.         necessary.
  2230.  
  2231. added colormap 'grouping'.  Use Button3 to add/delete color cells from the
  2232.         current group.  Hold shift key down and the image regeneration
  2233.         will be delayed until you let go of the shift key.  (normally
  2234.         the image would be redrawn every time you released Button3.)
  2235.         This allows you you quickly group multiple pixels.
  2236.  
  2237. added 'cut buffer' usage.  Whenever you track pixel values (by clicking the
  2238.     left button in the image window), the last pixel values are put in 
  2239.     the X cut buffer, so that you can paste them into your own program,
  2240.     an xterm window, or whatever.  Useful if you're using XV to choose
  2241.     'points-of-interest' to be used as input to another program.
  2242.  
  2243.     Also, if you click on the gamma values (above the graph in the 
  2244.     gamma window), those values will be put in the cut buffer as well.
  2245.     (Handy for setting default values for the Gamma resources.)
  2246.  
  2247. added a slightly-improved 'cropping' rectangle.  Should show up better on some
  2248.     pictures.
  2249.  
  2250. added hsv pixel display.  When tracking pixel values in the image window
  2251.     (with the left mouse button), the values will either be displayed
  2252.     as R,G,B components (0-255), or as HSV components (0-359, 0-100, 0-100)
  2253.     This is based on the setting of the HSV/RGB switch in the Gamma box.
  2254.  
  2255. added a 'Randomize Colors' button.  (keyboard equiv: 'R').
  2256.     Causes the entire colormap of the current picture to be
  2257.     randomized.  Groupings *will* be respected, however.  (ie, all pixels
  2258.     in a group will still have the same color, albeit a new one).  For
  2259.     amusing effects, do some by-hand color reduction (by grouping all
  2260.     similar colors), then do the randomize function.  
  2261.  
  2262. added an 'Undo All' button in the Gamma box.  Undoes all changes made to the
  2263.     image's colormap and clears all groupings.
  2264.  
  2265. added '-hsv' and '-rgb' switches (and xv.hsvmode resource (boolean)) to
  2266.     allow user to set initial hsv/rgb mode.  By default, program uses
  2267.     RGB.
  2268.  
  2269. fixed 'shift key' bug with regards to entering filenames in dir window
  2270.  
  2271. 'enter' in file i/o window now opens the currently selected directory
  2272.  
  2273. fixed bugs on 1-bit displays (fish cursor didn't flap during re-ditherization,
  2274.     CMap wasn't properly refreshed after loading new pic)
  2275.  
  2276. Smooth/Dither now sets 'Current Size' RButt in file i/o box.  (Need to save
  2277.     at current size to save 'smoothed' picture.)
  2278.  
  2279. BadAccess errors cause by XFreeColors are now ignored, as this is simply a 
  2280.     sign of a busted X server, and happens when multiply-allocated 
  2281.     colors are freed more than once.  (like they're supposed to be)
  2282.     Should make '-bfc' option obsolete.
  2283.  
  2284. Current Size RButt ripped out.  (Always saves at current size)
  2285.  
  2286. flapping fish cursor added during PBM/PGM/PPM file i/o
  2287.  
  2288. created GRAF type
  2289.  
  2290. MASSIVE modifications to GAMMA box
  2291.  
  2292. Gamma box renamed 'Color Editor' box ('cedit')
  2293.  
  2294. Added direct numeric gamma input to GRAF boxes
  2295.  
  2296. Created HDIAL controls
  2297.  
  2298. Changed non-range HDIAL to be a hue/saturation control
  2299.  
  2300. Created CBUTT check boxes
  2301.  
  2302. Added 'drag the whole range around' feature in range HDIALs
  2303.  
  2304. Added -nopos, -fgeom, and -fmap command line options (and resources)
  2305.  
  2306. Fixed 'crop near corner' graphics bug
  2307.  
  2308. Fixed multiple redraw bug, with any luck.
  2309.  
  2310. Added '-2xlimit' option and resource.  Allows the image window to be larger
  2311.     than the screen (up to 2x).  *NOT* recommended unless your WM
  2312.     is capable of operating windows without visible borders.  (ie, you'll
  2313.     need some meta-mouse-button action, ala twm/uwm...)
  2314.  
  2315. Added rudimentary GIF89 reading.  (Jon Brinkmann, jvb7u@astro.Virginia.Edu)
  2316.  
  2317. Changed ISTR_INFO to be more to Hagan's liking.  
  2318.     (eg  "320x200 GIF87.  Got all 37 colors.")
  2319.  
  2320. Fixed some probs in xvsunras.c
  2321.     (didn't understand RT_FORMAT_RGB, and RT_BYTE_ENCODED 8-bit
  2322.      rasterfiles didn't load correctly, nor did it handle odd-width
  2323.      24-bit images correctly)
  2324.  
  2325. Added POSTSCRIPT OUTPUT and PostScript Box  (7/6/91)
  2326.     Drag the image window around on the page with the mouse.  The scale
  2327.     controls are used for stretching.  Note:  if you use the arrow keys
  2328.     (regular and shifted), you can get precise positioning control.
  2329.  
  2330. Added GIF89 aspect ratio handling, warning message about skipped extensions,
  2331.     PlainText block handling (doesn't do anything with it)
  2332.  
  2333. Ripped out the '-fish' option and related code.  Never worked right anyway.
  2334.  
  2335. Added ability to type long strings in 'filename' field of dir box.
  2336.  
  2337. Split 'file i/o' button into two buttons 'Load' and 'Save'.  Directory box
  2338.     is now either a 'Load box' or a 'Save box', depending.  (^L and ^S
  2339.     are the accelerators).
  2340.  
  2341. Added ability to type pathnames in 'filename' field.  And 'cd-ing' to different
  2342.     directories directly without going through pesky UI.
  2343.  
  2344. Added 'popup' windows.  (The computer seems to be on fire.  <Ok> )
  2345.  
  2346. Stretched ctrlW so that 'helvetica' font would still fit (Ultrix 4.2 doesn't
  2347.     include 'lucida' still...)
  2348.  
  2349. Added 'close' (via mwm menu) handling to PostScript window and PopUp window.
  2350.  
  2351. Added wait cursor during directory-reading (whenever you change directories)
  2352.  
  2353. Fixed PostScript file output (to have correct comments)
  2354.  
  2355. Added 'maxpect' button in PS window.
  2356.  
  2357. Hooked up remaining buttons in ColEdit window  (undo, redo, 
  2358.     brite, dim, sharp, dull)
  2359.  
  2360. Got rid of 'recolor' operations when non-visible changes made to Graf's
  2361.     (changes of less than '2' aren't visible due to coordinate halving)
  2362.  
  2363. Added 'max contrast' button to gamma window
  2364.  
  2365. Added 'C' and 'R' keyboard equivs for 'MaxCnt' and 'Reset' respectively
  2366.  
  2367. Added 'default' picture (xvdflt.c)
  2368.  
  2369. Added 'Flip H' and 'Flip V' buttons ('h' and 'v' keyboard equivs)
  2370.  
  2371. Redesigned ctrl window somewhat
  2372.  
  2373. When you 'Load' files (via the Load dialog box), the file names are stuck
  2374.     in the 'ctrlW' list for E-Z Re-Viewing...
  2375.  
  2376. Added ability to 'reload' current picture (by double clicking on its entry
  2377.     int the ctrl window list)
  2378.  
  2379. Added 'Delete' command.  ('^D' keyboard equiv)
  2380.  
  2381. Mods to work (better) on Apollo systems
  2382.                 (Robert Goodwill (robert@earth.cs.jcu.edu.au))
  2383.  
  2384. Added support for 16-bit displays
  2385.                 (David Elliot    (dce@smsc.sony.com))
  2386.  
  2387. Improved 24-to-8 color compression routines
  2388.                 (Tom Lane     (Tom.Lane@g.gp.cs.cmu.edu))
  2389.  
  2390. Improved color selection algorithm
  2391.                 (Tom Lane     (Tom.Lane@g.gp.cs.cmu.edu))
  2392.  
  2393. Flag resources now accept 'on', '1', 'true', 'yes' in either u/l case
  2394.                 (Chris Weikart   (weikart@prl.dec.com))
  2395.  
  2396. Fixed potential overflow bug in linear interpolation code
  2397.                 (Chris Weikart   (weikart@prl.dec.com))
  2398.  
  2399. Added Motif-Style 3-d buttons
  2400.  
  2401. Added 'Auto-Reset' check box in ColEdit window
  2402.  
  2403. Optimization to ColEdit:  if changing a control hasn't actually
  2404.     affected the 'desired colormap', don't bother applying the change
  2405.  
  2406. Changed 'graf' controls:  you can now hold down the shift key and modify them
  2407.     to your hearts content.  The image is not actually recomputed until
  2408.     you let go of the shift key.
  2409.  
  2410. Added '-hi' and '-lo' options ('highcolor' and 'lowcolor' resources) for 
  2411.     setting the 'other' two colors on the buttons.
  2412.  
  2413. Added '-v' option ('visual' resource) to allow the user to force XV to use a
  2414.     specific visual type, rather than the server default.
  2415.  
  2416. Added gamma resources.  Hooked up 'Get Resources' button (copies current
  2417.     gamma settings into the cut buffer)
  2418.  
  2419. Ripped out '-tile', '-center', and '-rpat' options.  Replaced them with 
  2420.     '-rmode' option ('rootMode' resource)
  2421.  
  2422. Added mirrored tiling and integer mirrored tiling root modes.
  2423.  
  2424. PopUp window now pops up with the right-most button centered under the mouse,
  2425.     rather than in the middle of the screen.
  2426.  
  2427. Added '^D' accellerator key (for 'Disk File') in the 'Delete What' PopUp box.
  2428.  
  2429. Changed '-asmooth' and '-adither' to '-smooth' and '-dither', respectively.
  2430.  
  2431. Added stricter command line argument matching.  '-snausage' no longer would
  2432.     match the '-s' flag.
  2433.  
  2434. Changed way '-expand' (and 'expand' resource) works.  Now takes floating
  2435.     point number.  For backwards compatibility, negative numbers are 
  2436.     still treated as reciprocals.  (ie, both '-2' and '.5' will halve 
  2437.     the image)
  2438.  
  2439. Created 'MBUTT' pop-up menu widget.
  2440.  
  2441. Added 'Display Modes' popup button.
  2442.  
  2443. Fixed bug when using '-perfect'.  The XCopyColormapAndFree() function had the
  2444.     rather undesirable side effect of getting rid of the allocated
  2445.     colors used for the various windows, etc. (ie, more than the
  2446.     image colors)
  2447.  
  2448. Made 'Hagan-Style' tiling (aka, Centered Tiling) much more efficient
  2449.                 (Robert Potter  (rpotter@grip.cis.upenn.edu))
  2450.  
  2451. Made the 'directory' listing in the load/save box use an MBUTT.
  2452.  
  2453. Added JPEG support.        (Markus Baur  (s_baur@iravcl.ira.uka.de))
  2454.                 (and, of course, the Independent JPEG Group)
  2455.  
  2456. Added '-keeparound' flag (and 'keepAround' resource).  By default, if you
  2457.     'delete' the last file remaining in the ctrl window list, 
  2458.     the program will auto-exit.  This option overrides that behavior.
  2459.  
  2460. Ripped out '-fgeom' and '-fmap' options (and 'fileGeometry' resource).
  2461.     Load/Save boxes now come up wherever the mouse is.
  2462.  
  2463. Wrote OpenOutFile() and CloseOutFile() routines to unify redundant code
  2464.     in 'DoSave()' and 'writePS()'
  2465.  
  2466. Added 'piped' output.  (ie, save file "| lpr")
  2467.  
  2468. Added 'Alert' boxes (button-less PopUp's)
  2469.  
  2470. Bug fixes when loading/saving '~' files
  2471.  
  2472. Fixed PS output to be Encapsulated PostScript compatible
  2473.  
  2474. Added a faked 'colorimage' procedure for grayscale PS printers.
  2475.     (Color postscript files will print on non-color printers, albeit in
  2476.      grayscale.)
  2477.  
  2478. New Window positioning code.  Should work for (nearly) all WMs.
  2479.                 (Matthew Stier  (matthew@sunpix.East.Sun.COM))
  2480.  
  2481. Automatically smooths images that were 'shrunk' (2x, 4x, etc...)
  2482.  
  2483. Bug fixes to the JPEG i/o code.    (Tom Lane  (Tom_Lane@G.GP.CS.CMU.EDU))
  2484.  
  2485. Fixed problem in xv24to8.c with the Floyd-Steinberg dithering code.
  2486.                 (Charles Hannum  (mycroft@gnu.ai.mit.edu))
  2487.  
  2488. Modified 'Delete' behavior.  Only loads an image if you deleted the
  2489.     currently-viewed image.
  2490.  
  2491. Changes the suffix of the filename in the 'save window' when you change 
  2492.     file formats.
  2493.  
  2494. Got rid of 'Quit XV' buttons in load and save windows
  2495.  
  2496. Added extra verbiage to JPEG save window.
  2497.  
  2498. Dicked around some more with window positioning code.  Seems to work
  2499.     correctly in TWM and MWM.  Hopefully, it'll work in OLWM as well.
  2500.  
  2501. Added Makefile options and xv.h #ifdefs for Encore's UMAX 
  2502.     version of Unix System V.    (Drew Watson  (dwatson@encore.com))
  2503.  
  2504. Added '-owncmap' option (and 'ownCmap' resource) to make XV *always*
  2505.     use/install its own colormap.    (Bill Turner  (bturner@cv.hp.com))
  2506.  
  2507.  
  2508. Rev: 11/29/90  (version 1, patchlevel 3)
  2509. -----------------------------
  2510.  
  2511. Changed 'CCOPTIONS' to 'DEFINES' in Imakefile
  2512.  
  2513. Fixes for use with virtual root window managers (ie, tvtwm)
  2514.     (only cares about virtual root when using '-root' option,
  2515.      negative geometry's correctly handled.)
  2516.             (Andreas Stolcke   (stolcke@ICSI.Berkeley.EDU))
  2517.  
  2518. Modifications for Sequent machines (no 'mem*() routines)
  2519.             (Daniel Pommert    (daniel@ux1.cso.uiuc.edu))
  2520.  
  2521. Modifications to avoid bug in certain optimizers, most notably the default
  2522. optimization (-O) in Sun's C compiler.  (Incorrectly handles lines of the
  2523. sort "*p = array[*p]")
  2524.  
  2525. Modification to get around 'when I shift my arrow keys (to adjust the
  2526. cropping rectangle), my keyboard generates numbers instead' problem
  2527.             (Mark Horstman     (mh2620@sarek.sbc.com)
  2528.  
  2529. Modification to allow 'xsetroot' and 'xloadimage' to cleanup any
  2530. xv-displayed images in the root window, and vice-versa.
  2531.             (Richard Bingle    (bingle@cs.purdue.edu))
  2532.  
  2533.  
  2534.  
  2535. Rev: 11/26/90  (version 1, patchlevel 2)
  2536. -----------------------------
  2537. added workaround for 'X Protocol Errors' on broken servers (XFreeColors())
  2538.     (see the '-bfc' option)
  2539. fixed core dump when cropping on certain displays
  2540. misc. #ifdefs for HPs
  2541. fixed problem with fish cursor remaining around too long
  2542. more SVR4 #ifdefs            (David Elliott,  dce@smsc.sony.com)
  2543. fixed bug in tracking pixel values    (Bob Finch,      bob@gli.com)
  2544. misc #ifdefs for ISC 386/ix 2.0.2    (Mark Snitily    mark@zok.uucp)
  2545. misc #ifdefs for AT&T machines         (Eric Raymond   eric@snark.thyrsus.com)
  2546. misc #ifdefs for Silicon Graphics       (Paul Close     pdc@lunch.wpd.sgi.com)
  2547. Added POSIX signal handling        (Mike Patnode   (mikep@sco.com))
  2548. Port to SCO UNIX/ODT            (Mike Patnode   (mikep@sco.com))
  2549.  
  2550. fixed problem with using '-max' and '-fixed' at same time
  2551.             (Greg Spencer   greg@longs.lance.colostate.edu)
  2552. modification to work with Virtual Root Windows (ala swm and tvtwm)
  2553.             (Bill Kucharski  kucharsk@solbourne.com)
  2554.  
  2555. the 'save-as' filename is now set to the 'current' filename
  2556.  
  2557. Also, if you double click on 'plain' files in the directory box,
  2558.     it will set the 'save-as' filename accordingly.
  2559.  
  2560. Added ability to view images centered on the root window, without
  2561.     any tiling.  Added associated options ('-center', '-rfg', '-rbg',
  2562.     and '-rpat')
  2563.  
  2564. Workaround for twm 'No title bars' bug  
  2565.              (Steve Swales  steve@bat.lle.rochester.edu)
  2566.  
  2567. Bidirectional Rotate commands added
  2568.  
  2569. Maxpect command added:  (Maximum size, but preserve aspect ratio)
  2570.  
  2571. AutoCrop command added:  (Crops out solid borders.)
  2572.  
  2573. Potential support for 32-bit displays.  (Hasn't been tested.  Don't have one.)
  2574.  
  2575.  
  2576. Rev: 10/17/90   (version 1, patchlevel 1)
  2577. ------------------------------
  2578. Imakefile added            (David Elliot    (dce@smsc.sony.com))
  2579. System V release 4 mods        (David Elliot    (dce@smsc.sony.com))
  2580. Bug in 'quick check' fixed    (Arthur Olson    (ado@elsie.nci.nih.gov))
  2581. Mods for Convex machines    (Anthony Datri   (datri@convex.com))
  2582. 'vprintf' module added         (Jonathan Kamens (jik@pit-manager.mit.edu))
  2583. window creation bug fixed
  2584. added icon
  2585. fixed 'Input Focus' probs
  2586. added '-w' flag to bggen
  2587. various cleanups to shut up 'noisy' compilers
  2588.  
  2589.  
  2590. Rev: 10/9/90    (version 1, patchlevel 0  -  initial release)
  2591.  
  2592.